一共3篇文章,共同描述,看序号进行寻找。
效果图,这是后端返回微信的信息,这也是最重要的,突然一看,感觉不是自己要的,后面进行展开说明。
1.主要参考
这里有些废弃的用法,坑有点多,并且文档说的和返回的都不一样。
例如:这个方法
返回的参数
实际调用的时候,返回的值为:
就没有openId字段,昵称也是错误的。
还有这个方法:getUserProfile(),就不一一吐槽了,原因就是上面的说的,被收回了,所以,你之前学会的方法,现在已经不适用了。
2.主要参考的是这里
先梳理清楚流程图
3.代码
<template>
<view class="container">
<button @click="login">获取微信账号</button>
</view>
</template>
<script setup>
function login() {
const appid = '***'; //填写appid
const secret = '***'; //填写secret
uni.login({
provider: 'weixin',
success: (res) => {
console.log('1')
console.log(res.code) //获取code
const code = res.code
//获取成功后
uni.request({
url: `https://api.weixin.qq.com/sns/jscode2session?appid=${appid}&secret=${secret}&js_code=${code}&grant_type=authorization_code`,
success: (res) => {
console.log('2')
console.log(res.data); //获取session_key和openid,此处关联后端进行业务处理
//返回的openid就是微信的账号
},
fail: (res) => {
console.log(res.data)
}
})
},
fail: (res) => {
console.log(res.data)
}
})
}
</script>
<style>
</style>
4.解析返回的参数
就如同下面的截图
微信开发者官网已经说明了,用户唯一标识 OpenID,所以我们OpenID就是微信的账号。
获取到微信账号OpenID后,就可以存进数据库里面,后面根据账号做一些业务处理 .
5.当你把3篇文章都看完了后,就彻底明白了,这玩意儿还是挺复杂的,没错,是挺复杂,我们只要微信登录,居然要访问这么多接口才行。
现在我们来罗列一下3篇文章一共给的参数,都有什么:
微信的账号OpenID,微信的头像,微信的昵称,微信的电话号码。一共就这么多参数,就可以进行下一步业务逻辑的展开了。