- 回调通知
能收到回到通知,但是取不到HTTP响应头,导致获取的签名信息是null,那验签就过不去了; @PostMapping("/wechatPayNotice") @ResponseBody public String payNotify(HttpServletRequest request, HttpServletResponse response) { Map<String,String> headers = new HashMap<>(); String wechatpayTimestamp = response.getHeader("Wechatpay-Timestamp"); String wechatpayNonce = response.getHeader("Wechatpay-Nonce"); String wechatpaySerial = response.getHeader("Wechatpay-Serial"); String wechatpaySignature = response.getHeader("Wechatpay-Signature"); 为啥我从response取出来的头信息都是null?
2021-04-24 - 多账号调试
启用多账号调试后,为啥重新登录,显示的是调试账号信息,不是主账号信息,主账号切不回来了怎么弄
2021-04-02 - 加密解密问题
1、获取平台证书接口中,微信支付方返回的响应信息: { "data": [ { "serial_no": "5157F09EFDC096DE15EBE81A47057A7232F1B8E1", "effective_time ": "2018-06-08T10:34:56+08:00", "expire_time ": "2018-12-08T10:34:56+08:00", "encrypt_certificate": { "algorithm": "AEAD_AES_256_GCM", "nonce": "61f9c719728a", "associated_data": "certificate", "ciphertext": "sRvt… " } }, { "serial_no": "50062CE505775F070CAB06E697F1BBD1AD4F4D87", "effective_time ": "2018-12-07T10:34:56+08:00", "expire_time ": "2020-12-07T10:34:56+08:00", "encrypt_certificate": { "algorithm": "AEAD_AES_256_GCM", "nonce": "35f9c719727b", "associated_data": "certificate", "ciphertext": "aBvt… " } } ] } 想问的是: (1)这个响应需要验签吧?(所有调微信支付相关接口的响应和回调都需要验签吧?) (2)这个ciphertext 通过AES解密后是不是证书内容?文档也没备注,只说是加密秘文;有了两个证书的话, 就要AES解密两次? (3)通过接口下载的平台证书,是跟原平台证书放同一个目录?,是直接覆盖原证书还是两个都暂时保留,原证书过期后删除;
2021-03-12 - 临时登录凭证 code 能不能在登录之后的其他业务请求的请求头中传给后端服务
https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html 临时登录凭证 code 只能使用一次 这个是指在这次登录的会话中只能使用一次?在此次会话中应该不限制吧,不然后面调用 auth.code2Session 接口的时候,要用到这个code怎么办 后端服务只有登录的时候才会从请求取到code,要想从登录后的业务请求中获取code,那前端必须把code放到业务请求头中了,每次发起请求头都需要带上code,这样跟【临时登录凭证 code 只能使用一次】有点冲突了,说的我有点懵!!!求大神解释; 按我的理解,有两种处理方式: (1)每次会话期间, 前端把code放到业务请求头中发送给后端,后端校验的时候,调用 auth.code2Session 接口就能渠道code; (2) 每次会话期间, 后端在每次登录成功后将临时code保存起来,后面每次收到前端的业务请求的时候,前端不用送code; 这种的后端需要在会话失效的时候主动去清除code;
2021-03-06