目录
- 一、获取用户的openId
- 1、前提条件:找到小程序的id和密钥
- 2、代码展示
- 3、结果
- 二、获取用户的基本信息
- 1、API说明
- 2、代码展示
- 2、结果
一、获取用户的openId
1、前提条件:找到小程序的id和密钥
在微信公众平台,https://mp.weixin.qq.com/,找到小程序的id和密钥
2、代码展示
(1)uni.login:获取用户的登录凭证。
https://uniapp.dcloud.io/api/plugins/login?id=login
(2)uni.request:发送网络请求,通过登录凭证获取用户的openID。
https://uniapp.dcloud.io/api/request/request?id=request
(3)请求接口说明
https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/2.0/api/others/WeChat_login.html#%E8%AF%B7%E6%B1%82%E5%9C%B0%E5%9D%80
注:只需要替换掉小程序的id和密钥,其它参数无需更改
uni.login({provider: "weixin",success: function (res) {let appid = "小程序id";let secret = "小程序密钥";let url ="https://api.weixin.qq.com/sns/jscode2session?appid=" +appid +"&secret=" +secret +"&js_code=" +res.code +"&grant_type=authorization_code";uni.request({url: url, // 请求路径success: (r) => {console.log("r", r);console.info("用户的openId", r.data.openid);},});},});
3、结果
二、获取用户的基本信息
1、API说明
uni.getUserProfile:获取用户信息。每次请求都会弹出授权窗口,用户同意后返回 userInfo。
https://uniapp.dcloud.io/api/plugins/login?id=getuserprofile
2、代码展示
uni.getUserProfile({desc: "获取你的昵称、头像信息",//必填项,声明获取用户个人信息后的用途,不超过30个字符success: (res) => {const userInfo = res.userInfo;console.log("用户基本信息", userInfo);},fail: (res) => {//拒绝授权wx.showToast({title: "获取失败",icon: "error",duration: 2000,});return;},});