微信小程序获取 openID

本文详细介绍了如何使用微信小程序的wx.login接口获取用户登录凭证code,并通过后台PHP代码调用微信官方API,将code转换为用户的OpenID、sessionKey及unionId的过程。包括前后端代码实现与http请求方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.通过 wx.login接口获取code如:
wx.login({
    success: res => {
      console.log("code",res)
      // 发送 res.code 到后台换取 openId, sessionKey, unionId
      var wx_code=res.code

      
  wx.request({
 url: 'https://spreaddisc.checkba.net/index.php',
                   method: "POST",
                    data: {
                      wx_code:wx_code
                    },
                    header: {
                      'content-type': 'application/x-www-form-urlencoded' // 默认值
                    },
                    success: function (res) {
                      //这里可以获取数据;
                      console.log("openid", res);

                      var data = res.data;
                      var length = data.length;


}
PHP代码: index.php

$code=I("post.wx_code");
     $appid="************";
     $secret="*********";
 $api="https://api.weixin.qq.com/sns/jscode2session?appid={$appid}&secret={$secret}&js_code={$code}&grant_type=authorization_code"; //调用官方接口
     $wx_code=$this->httpGet($api);
     $data=json_decode($wx_code,true);
     $openid=$data["openid"]; //用户的openid  
    echo $openid;

httpGet函数:
public function httpGet($url){
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_TIMEOUT,500);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST , true);
    curl_setopt($curl, CURLOPT_URL, $url);
    $res = curl_exec($curl);
    curl_close($curl);
    return $res;
}
--------------------- 
作者:he_Lucian 
来源:优快云 
原文:https://blog.youkuaiyun.com/u012729832/article/details/79650531 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值