美文网首页
在小程序中获取openId,附加具体代码

在小程序中获取openId,附加具体代码

作者: sun_wenming | 来源:发表于2017-08-23 12:03 被阅读0次

    1.客户端代码

     // 获取 code
      getLogin: function () {
        var that = this;
        wx.login({
          success: function (res) {
            that.getOpenId(res.code);
            console.log(res);
          }
        });
      },
      //获取openid
      getOpenId: function (code) {
        var that = this;
        wx.request({
          url: that.url.openId,
          method: 'POST',
          header: {
            'content-type': 'application/x-www-form-urlencoded'
          },
          data: { 'code': code },
          success: function (res) {
            var openId = res.data.openid;
            console.log(res.data.openid);
            // that.xiadan(openId);
          }
        })
      },
    
    

    2.后台 php端 代码:

    //    获取openId
        function getOpenId($code)
        {
            $url = 'https://api.weixin.qq.com/sns/jscode2session?appid='
                   . $this->appid . '&secret=' 
                  . $this->secret . '&js_code=' 
                 . $code . '&grant_type=authorization_code';
            return $this->getHTTPS($url);
        }
    
        //获取https页面信息
        function getHTTPS($url)
        {
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
            curl_setopt($ch, CURLOPT_HEADER, false);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_REFERER, $url);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
            $result = curl_exec($ch);
            curl_close($ch);
            return $result;
        }
    
    //  封装到公共的方法之后  在其它php中调用,并返回
      public function openId()
        {
            $code = $this->request->post('code');
            echo $this->getOpenId($code);
        }
    
    

    相关文章

      网友评论

          本文标题:在小程序中获取openId,附加具体代码

          本文链接:https://www.haomeiwen.com/subject/wmsddxtx.html