微信这个 API 设计真的拉胯, 我在几个帖子里都看到官方的人员在要求开发者自己核对几个可能性, 但是这个傻逼 errmsg 里就只告诉你 invalid code. 你要真希望开发者自己能快速核对出结果, 为啥不每个可能性都分别对应不同的 errmsg .
网页授权获取 openid 失败 40029 ?目前已经能够获取到微信浏览器自动跳转后的 code 了, 但是在获取到 code 后立即向服务端发起请求, 在服务端使用获取 code 时相同的 appid 获取 openid 则一直都获取不到. 更换 AppSecret 后依然无法正常获取 openid . 示例如下: GET https://api.weixin.qq.com/sns/oauth2/access_token?grant_type=authorization_code&appid=wxecxxxxxxxxxxxxbc&secret=4c6bxxxxxxxxxxxxxxxxxxxxxxxxf960&code=051gfx100Ja2YQ1kdI3003pqWf0gfx1s HTTP/1.1 {"errcode":40029,"errmsg":"invalid code, rid: 65448de6-2c821f0d-6493a129"} 参考的文档是: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html#%E7%AC%AC%E4%BA%8C%E6%AD%A5%EF%BC%9A%E9%80%9A%E8%BF%87code%E6%8D%A2%E5%8F%96%E7%BD%91%E9%A1%B5%E6%8E%88%E6%9D%83access-token ------ 参考 https://developers.weixin.qq.com/community/develop/doc/0008a8336ccab0164a1003aae6b800 后排除了以下可能: + code 过期: 不可能, code 是在浏览器端获取到以后立即发给服务端的, 不可能存在超过 5 分钟的延时. + code 重复使用的问题: 不可能, 服务端的日志显示仅使用过一次该 code + code 错误: 不可能, 通过对比微信浏览器中网站上的 vconsole 后, 可以确认网站上的 ?code=<code> 参数与服务端发起请求时的 code 参数一致. + code 与 appid 不匹配: 不可能, 网站发起请求时将获取 code 使用的 appid 一起发送给了服务端. 目前在猜测可能和公众号哪个地方的设置有关系, 但是缺少核对的方式.
2023-11-032020-08-03 微信支付团队依然没有提供一个官方的示例。
微信支付的java sdk你好,微信支付官网下载的java sdk是: <groupId>com.github.wxpay</groupId> <artifactId>wxpay-sdk</artifactId> <version>3.0.9</version> <name>wxpay-sdk</name> <description>wxpay sdk</description> --->版本3.0.9,文件打包日期为2018/07/05 而在maven仓库中的有两个: 1. <dependency> <groupId>com.github.wxpay</groupId> <artifactId>wxpay-sdk</artifactId> <version>0.0.3</version> </dependency> --->版本0.0.3,更新于Mar 16, 2017 2. <dependency> <groupId>com.github.wxpay</groupId> <artifactId>WXPay-SDK-Java</artifactId> <version>0.0.4</version> </dependency> --->版本0.0.4,更新于Mar 06, 2019 --->jar打包时间实为2017/10/15 请问哪个是微信支付官方最新的java sdk?请告知,多谢
2020-08-03