关闭

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

1507人阅读 评论(0) 收藏 举报
分类:

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

妈蛋。

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转码下


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:19695次
    • 积分:495
    • 等级:
    • 排名:千里之外
    • 原创:29篇
    • 转载:4篇
    • 译文:0篇
    • 评论:10条
    文章分类