微信支付-返回签名错误
2015-10-15 15:55
609 查看
Android 微信支付SDK ,支付操作大概3步。
1、生成预支付订单
2、生成签名参数
3、调取微信支付页面
但是需要注意的是,在获取预支付订单的时候会报签名错误。
大概也就那几种可能:
1、微信开放平台的签名设置和你当前的的确不一样,这个需要自己检查
2、API 密匙不正确,这个需要登陆商户后台,修改。
3、商品名中有中文,需要对拼的XML进行编码ISO8859-1。如下
1、生成预支付订单
2、生成签名参数
3、调取微信支付页面
但是需要注意的是,在获取预支付订单的时候会报签名错误。
大概也就那几种可能:
1、微信开放平台的签名设置和你当前的的确不一样,这个需要自己检查
2、API 密匙不正确,这个需要登陆商户后台,修改。
3、商品名中有中文,需要对拼的XML进行编码ISO8859-1。如下
private String genProductArgs() { StringBuffer xml = new StringBuffer(); try { String nonceStr = genNonceStr(); xml.append("</xml>"); List<NameValuePair> packageParams = new LinkedList<NameValuePair>(); // 公众账号ID 调用接口提交的公众账号ID packageParams.add(new BasicNameValuePair("appid", Constants.APP_ID)); // 商品描述 商品或支付单简要描述 packageParams.add(new BasicNameValuePair("body", body)); // 商户号 微信支付分配的商户号 packageParams.add(new BasicNameValuePair("mch_id", Constants.MCH_ID)); // 随机字符串 微信返回的随机字符串 packageParams.add(new BasicNameValuePair("nonce_str", nonceStr)); // 通知地址 接收微信支付异步通知回调地址 packageParams.add(new BasicNameValuePair("notify_url", notify_url)); // 商户订单号 商户系统内部的订单号,32个字符内、可包含字母, // 其他说明见商户订单号https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=4_2 packageParams.add(new BasicNameValuePair("out_trade_no", out_trade_no)); // 终端IP APP和网页支付提交用户端ip,Native支付填调用微信支付API的机器IP。 packageParams.add(new BasicNameValuePair("spbill_create_ip", "127.0.0.1")); // 支付金额单位:分 packageParams.add(new BasicNameValuePair("total_fee", total_fee)); // 交易类型 // 取值如下:JSAPI,NATIVE,APP,WAP,详细说明见参数规定https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=4_2 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"); } catch (Exception e) { LogOut.e("genProductArgs fail, ex = " + e.getMessage()); return null; } }
相关文章推荐
- 微信硬件平台wifi设备通信第一篇
- 微信入口也不是万能的,至少电商、理财和O2O这三类它伺候不了
- 微信公众号
- 微信硬件平台开发前。。。
- 微信开发中的另一个坑:不能重复提交订单
- 微信解析xml和maven中jar关于getTextContent()冲突
- 关于微信加解密illegal key size问题
- 微信手Q分享js定制
- 009.判断登陆信息
- js常见小程序(一)
- 【服务号】微信公众号接入过程笔记
- 友盟社会化分享的坑——微信好友/朋友圈分享跳转不到内容编辑界面
- 成功在内网中通过代理服务器使用随身WIFI上微信
- 微信invalid signature签名错误可能原因
- 微信-.NET调用JS-SDK
- 微信-JSSDK .NET版
- 微信公众平台OAuth2.0网页授权php示例
- ios9 xcode7 微信分享link异常
- 微信实现转发到朋友圈或者好友
- iOS 支付 [支付宝、银联、微信]