微信native方式支付中body为中文时签名错误解决方法

原地址http://blog.csdn.net/qiwenmingshiwo/article/details/41902551


        最近在做在做微信支付中的native支付第二种支付方式,在请求参数时遇到了最大的问题就是,body(商品描述)为中文时,签名失败,为英文时签名成功。这个问题搞了好几天,没有搞定,今天终于搞定了,特此分享一哈。

其实就是一句话的问题:  把我们生成的xml请求参数转为字节数组后,用“ISO8859-1”编码格式进行编码为字符串,就可以解决问题了。



return new String(sb2.toString().getBytes(), "ISO8859-1");








=============================================================================================================

上面的已经可以解决问题。下面我只是说说更详细的解决步骤。

1. 首先我们来看看官方的接口文档:

认证方式:HTTPS讣证,退款和冲正接口调用需要商户证书(证书在审核邮件附件
中) 
请求采用POST方式 
提交和返回结果采用XML格式 
字符集默讣使用UTF-8,请勿使用其它字符集 
商户不微信之间的交互(特别是Native回调和支付通知回调),都需要验证签名 

4.1.统一支付接口 
URL地址:https://api.mch.weixin.qq.com/pay/unifiedorder 
统一支付接口,可接叐JSAPI/NATIVE/APP下预支付订单,返回预支付订单号。 
NATIVE支付返回二维码code_url。 
注意:JSAPI 下单前需要调用登录授权接口(详细调用说明请点击打开链接)获叏到用户
的Openid。
</

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 24
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值