微信支付返回-1,問題排查

S丶Mask發表於2019-05-22

如需轉載,請標明原文出處: https://juejin.im/post/5ce520776fb9a07ea6484a02 ,謝謝。

App端

  1. 確認微信開放平臺的AppID、包名、應用簽名的正確性;
  2. PayReq的配置;
        PayReq request = new PayReq();
        request.appId = WechatHelper.APP_ID;
        request.partnerId = dataObj.optString("mch_id");
        request.prepayId = dataObj.optString("prepay_id");
        request.packageValue = dataObj.optString("package");
        request.nonceStr = dataObj.optString("nonce_str");
        request.timeStamp = dataObj.optString("timestamp");
        request.sign = dataObj.optString("sign");
        api.sendReq(request);
複製程式碼
  1. api.sendReq(request);之前要註冊到微信registerApp(APP_ID)

伺服器端

  1. 伺服器返回給客戶端的資訊需要進行二次簽名;
  2. 伺服器簽名的型別有兩種MD5HMAC-SHA256,現在微信好像預設為HMAC-SHA256
  3. 可以使用微信的線上簽名工具檢查簽名是否和程式生成的一致。
    【微信支付】付款碼支付開發者文件

相關文章