微信接口获取用户信息userinfo

待完善
//<!--授权接口-->
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=平台配置的回调地址&res&response_type=code&scope=snsapi_userinfo&state=STATE&connect_redirect=1#wechat_redirect

//<?php

$code = $_GET["code"];//得到code
if($code){
    //获取到access_token的接口地址
    $url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=secret&code=$code&grant_type=authorization_code";
}
//得到access_token,openid
$q=data($url);
//获取用户信息的接口
$url2="https://api.weixin.qq.com/sns/userinfo?access_token=$q->access_token&openid=$q->openid&lang=zh_CN";
$c=data($url2);
var_dump($c);

/**
 *
 * @param $url
 * @return mixed
 */
function data($url){
    $postUrl = $url;
    $curlPost = '';
    $ch = curl_init();//初始化curl
    curl_setopt($ch, CURLOPT_URL,$postUrl);//抓取指定网页
    curl_setopt($ch, CURLOPT_HEADER, 0);//设置header
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
    curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
    curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
    $data = curl_exec($ch);//运行curl
    curl_close($ch);

    $j=json_decode($data);
    return $j;
}

 

微信小程序的登录接口主要用来获取用户的微信授权信息,包括基本的用户ID和昵称等,这通常涉及到微信的JS-SDK。获取用户信息的过程如下: 1. **wx.login()**:首先,你需要在小程序中引入` wx.login()`方法,这个方法会引导用户授权,返回code,用于换取access_token。 ```javascript // 在页面的js文件中 wx.login({ success: function (res) { // 获取code后,可以使用code换取access_token }, fail: function (err) { console.error('login fail', err); } }) ``` 2. **wx.request()**:使用`wx.request`方法,携带code、appid、secret(在微信公众平台上申请的小程序ID和对应的密钥)调用微信的统一接口`https://api.weixin.qq.com/sns/jscode2session`,换取access_token和openid。 ```javascript wx.request({ url: 'https://api.weixin.qq.com/sns/jscode2session', data: { js_code: res.code, // code from login appid: 'your_appid', secret: 'your_secret', grant_type: 'authorization_code' }, header: { 'content-type': 'application/json' }, success: function(res) { var sessionKey = res.data.session_key; // 使用sessionKey和openid获取用户信息 } }) ``` 3. **获取用户信息**:有了access_token和openid,你可以进一步调用微信用户信息接口`https://api.weixin.qq.com/user/info`来获取详细的用户信息,如头像、昵称、性别等。注意这里需要设置`scope`参数为`snsapi_userinfo`。 ```javascript wx.getUserInfo({ success: function(userInfo) { // userInfo对象包含了用户基本信息 var nickname = userInfo.nickName; // 使用access_token和openid继续请求详细用户信息接口 } }) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值