如何再次获取openid
发布于 5 年前 作者 xiulan17 19115 次浏览 来自 问答

如题,我在微信里调用了api接口,第一次调用成功,给我返回了openid,然后我在程序里再次调用这个接口的时候,一直返回

{"errcode":40163,"errmsg":"code been used, hints: [ req_id: d1_Ila0989s194 ]"}

请教大神,如何用同一个微信号再次获取openid?

9 回复

您好!请问最后是怎么解决的呢?

调用weixin.api.qq.com,传的js_code每次都是新的,依然报这个错误,退出微信开发工具,重新登录都不好使

获取到openid后,把他存储到全局globalData中,之后要再次获取的话就直接直接用app.globalData.openid就好了

我的也是这个问题,请问是怎么解决的?

这个问题是由于微信修改了接口,不允许通过直接访问的方式获取openid,需要改成在你自己的后台程序调用获取openid的接口,然后再返回给前台。

同志们,我想知道,为啥真机测试拿不到openid呢

我把获取到的openid放到缓存或者全局变量中,但是只有真机测试拿不到

调用这个接口,就第一次返回了openid,以后每次调用,js_code都是最新的,一直报code been used

这个接口需要在微信公众平台配置域名么?为什么我可以获取到code但是无法通过code获取到openID呢?我的接口地址: url: ‘https://api.weixin.qq.com/sns/jscode2session?appid=’ + appid + ‘&secret=’ + secret + ‘&js_code=’ + loginCode.code +’&grant_type=authorization_code’,调试报错:不在以下合法域名列表中,请参考文档:https://mp.weixin.qq.com/debug/wxadoc/dev/api/network-request.html,请问是怎么回事呢

code been used 应该是调用wx.login()获取的code失效了,传一个新的code再调用获取openId的接口,就可以的吧。

回到顶部