收藏
回答

获取用户openid结果异常,求解答

在开发中小程序获取用户openid,请求接口时,

https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

第一次请求会得到返回的openid数据, 但是在第二次请求时, 会返回bool值:false


代码示例:

            $code = $request->post('code');

            $url  = 'https://api.weixin.qq.com/sns/jscode2session?appid='.$this->app_id.'&secret='.$this->app_secret.'&js_code='.$code.'&grant_type=authorization_code';

            header("Content-Type: application/json");


            $data = $this->https_request($url);

            return $data;


PHP curl请求 第二次会报错 curlerrno 为6
传入的code都是有值, 请问第一次请求会得到数据, 过一会请求会返回false?是api.weixin.qq.com 限制了ip访问吗? 是请求的频率太快?求解答

最后一次编辑于  2019-03-20
回答关注问题邀请回答
收藏

2 个回答

  • 小程序技术专员-寂
    小程序技术专员-寂
    2019-03-20

    您好,请参考文档:

    https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html


    ”临时登录凭证 code 只能使用一次"

    2019-03-20
    赞同
    回复 2
    • Pan
      Pan
      2019-03-20

      你好, code的获取是没有问题的, 当用户第一次进去小程序后,这个url请求能获取到openid, 当用户下一次再进入小程序时, 这个url请求就会返回bool值false, 每次的请求code的值是有的

      2019-03-20
      回复
    • 三世羽翾
      三世羽翾
      2019-03-20回复Pan

      你为什么要每次都获取openid?获取以后存于缓存,每次进入先获取缓存,有取缓存,没有再去获取

      2019-03-20
      回复
  • 三世羽翾
    三世羽翾
    2019-03-20

    你用的code每次相同还是不同?

    2019-03-20
    赞同
    回复 1
    • Pan
      Pan
      2019-03-20

      不同的用户,不同的code, 但是返回的结果都是一样, 第一次进入小程序会得到openid, 当下一次再进入小程序时, 会返回bool值fasle

      2019-03-20
      回复
登录 后发表内容