报错:Http头Authorization值格式错误,请参考《微信支付商户REST API签名规则》

更新时间:2024.08.22

请参考 操作指引-如何生成请求签名 的设置HTTP头章节,一步步按照示例操作一遍,

以下是一个HTTP头Authorization值的示例(因为长度原因,展示起来可能看起来像换行,实际上Authorization值是在一行)

1Authorization: WECHATPAY2-SHA256-RSA2048 mchid="123456789",nonce_str="593BEC0C930BF1AFEB40B4A08C8FB242",signature="gZGkLF3mVIHY72hE1cFSrbEOKr5O7N2jYZAt5VSBpZpHn84HWylnljJHGGlMAtFt4AUP/gso9MyQ95GNb9h9DYI3RmwQe2kvcysVKoYvzgst217AzZYYwHaUnanaEFEuKD33L84JPe/HX1CLs4VjcE16aZfORqHanlgPivirKg/SysHWtlHVU5zYiWsfXU3ylgWXqjj4hHRgKiJ1KbPzMqS0izDfnEBfTWp7GQddnxVOcbCGfk6jQECNu5GX9hFoxL2oCv5iHUg5Vka0/rKs9wjlRLmDPyObMpJUYQ2/a7HcNnzFxxC+JJa+PAjLWT/nkEMdTMotHFwQN05TWB0M9A==%",timestamp="1554208460",serial_no="1DDE55AD98ED71D6EDD4A4A16996DE7B47773A8C"

(1)请确认Authorization值是在一行,红框的位置是一个空格而非换行符 alt text

(2)请确认认证类型为WECHATPAY2-SHA256-RSA2048

(3)确认包含了mchid(商户号)、nonce_str(随机支付串)、serial_no(商户API证书序列号)、timestamp(时间戳)、signature(签名值)参数,且这些参数和计算签名的参数值保持一致

(4)Authorization里的参数是双引号,不是单引号。
nonce_str="593BEC0C930BF1AFEB40B4A08C8FB242"而不是
nonce_str='593BEC0C930BF1AFEB40B4A08C8FB242'

(5)HTTP头Authorization值都是英文下的符号,而不能是中文符号,参数之间也不要有空格

更多技术问题
技术咨询
反馈
咨询