微信支付时body有中文无法支付出现签名错误问题

原创 2015年11月18日 16:33:14

其实很简单。害我搞了大半天。

妈蛋。

String nonceStr = genNonceStr();
                        xml.append("</xml>");// Yuebai Steam Car Wash Service
                        List<NameValuePair> packageParams = new LinkedList<NameValuePair>();
                        packageParams.add(new BasicNameValuePair("appid", Constants.APP_ID));
                        packageParams.add(new BasicNameValuePair("body", "随你探探"));// 这个有中文时无法支付
                        packageParams.add(new BasicNameValuePair("mch_id", Constants.MCH_ID));
                        packageParams.add(new BasicNameValuePair("nonce_str", nonceStr));
                        packageParams.add(new BasicNameValuePair("notify_url", HttpConstant.wxapi));
                        packageParams.add(new BasicNameValuePair("out_trade_no", orderid));
                        packageParams.add(new BasicNameValuePair("spbill_create_ip", "127.0.0.1"));
                        int a = (int) (Integer.parseInt(m) * 100);
                        packageParams.add(new BasicNameValuePair("total_fee", a + ""));
                        packageParams.add(new BasicNameValuePair("trade_type", "APP"));
                        String sign = genPackageSign(packageParams);
                        packageParams.add(new BasicNameValuePair("sign", sign));
                        String xmlstring = toXml(packageParams);
                        return new String(xmlstring.toString().getBytes(), "ISO8859-1");//这句加上就可以了吧xml转码下


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

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

[java] view plaincopyprint? "font-family: Arial, Helvetica, sans-serif; font-size: 18...

微信支付有汉字时出现签名错误的解决办法

微信支付有汉字时出现签名错误的解决办法 最近发现在win2003开发微信支付时,有汉字时出现签名错误,但在win7上不会出错, 最后发现是字符编码不一致造成的。 解决办法 改正...
  • yjg428
  • yjg428
  • 2015年03月06日 23:44
  • 16154

android 微信支付,body为中文字符,签名错误

微信支付,签名错误

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

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

微信支付v3 body中文无法支付问题

String nonceStr = genNonceStr();                         xml.append("");// Yuebai Steam Car Wash Se...

微信支付有汉字时出现签名错误的解决办法

最近发现在win2003/win2008开发微信支付时,有汉字时出现签名错误,但在win7上不会出错, 最后发现是字符编码不一致造成的。 解决办法 改正wxpay-scanpay-jav...
  • ye1992
  • ye1992
  • 2016年08月04日 18:11
  • 729

【微信支付踩到的那些坑】1.Android 微信支付,body为中文字符,签名错误

问题:body自段设置成英文字符串的时候,签名成功,但是设置成中文字符的时候就签名错误 解决方法:改变拼接之后xml字符串格式 为"ISO8859-1" private String genP...

微信支付body中文乱码分享

相信很多小伙伴们在微信支付过程中一定遇到很多坑,其中不少小伙伴会有body中文乱码问题 在这里我分享一下我的解决方法 body使用英文时一点问题没有,使用中文时提示body不是utf8编码,在网上也是...

微信统一下单接口body为中文,报【签名错误】的解决办法

该处记录的是本人在开发过程中遇到的问题以及解决的方案。 现象:微信支付,调微信的统一下单接口,本地jetty 和 tomcat 都可以调通,并能完成支付。但是部署到centos服务器上之后,就一直报签...

微信支付 商品描述 body字段乱码

在做微信支付的时候,商品描述 body字段显示是乱码。 解决方案: 其实不用单独对body进行编码,只要对组装好的整体xml进行编码就行了:new String(xml1.toString().g...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:微信支付时body有中文无法支付出现签名错误问题
举报原因:
原因补充:

(最多只允许输入30个字)