微信小程序第三方登录
目录
小程序第三方登录操作流程如下:
1.第一步
2.第二步
2.第三步
4.第四步
5.第五步
小程序第三方登录操作流程如下:
注意:如果第一步没打印出来,看看微信模拟器上的Id有没有更改,或则去源码试图,weixinId更改
1.第一步
进入uniapp官网=>Api=>第三方服务=>登录=>微信小程序登录
2.第二步
创建一个触发事件,获取头像和名称
uni.getUserProfile({desc: '需要用到昵称和图像',success: (a) => {console.log(a);this.nickName = a.userInfo.nickNamethis.avatarUrl = a.userInfo.avatarUrl// uni.login({// success: (res) => {// console.log(res);// this.code = res.code// if (res.code) {// uni.request({// url: `https://api.weixin.qq.com/sns/jscode2session?appid=${this.appid}&secret=${this.secret}&js_code=${this.code}&grant_type=authorization_code`,// success: (resq) => {// console.log(resq);// let openid = resq.data.openid// uni.request({// url: 'http://ceshi2.dishait.cn/api/v1/user/otherlogin',// method: 'POST',// data: {// provider: 'weixin',// openid: openid,// expires_in: '9999',// nickName: this.nickName,// avatarUrl: this.avatarUrl// },// success: (resp) => {// console.log(resp);// this.getUserInfo(resp.data.data)// uni.switchTab({// url: '../myfile/myfile'// })// }// })// }// })// }// }// })}})
2.第三步
调用 wx.login() 获取 临时登录凭证code ,并回传到开发者服务器
uni.getUserProfile({desc: '需要用到昵称和图像',success: (a) => {console.log(a);this.nickName = a.userInfo.nickNamethis.avatarUrl = a.userInfo.avatarUrluni.login({success: (res) => {console.log(res);this.code = res.code// if (res.code) {// uni.request({// url: `https://api.weixin.qq.com/sns/jscode2session?appid=${this.appid}&secret=${this.secret}&js_code=${this.code}&grant_type=authorization_code`,// success: (resq) => {// console.log(resq);// let openid = resq.data.openid// uni.request({// url: 'http://ceshi2.dishait.cn/api/v1/user/otherlogin',// method: 'POST',// data: {// provider: 'weixin',// openid: openid,// expires_in: '9999',// nickName: this.nickName,// avatarUrl: this.avatarUrl// },// success: (resp) => {// console.log(resp);// this.getUserInfo(resp.data.data)// uni.switchTab({// url: '../myfile/myfile'// })// }// })// }// })// }}})}})
4.第四步
调用 auth.code2Session 接口,换取 用户唯一标识 OpenID 、 用户在微信开放平台帐号下的唯一标识UnionID(若当前小程序已绑定到微信开放平台帐号) 和 会话密钥 session_key。
获取小程序 appId和小程序 appSecret,在微信公众平台=>小程序信息=>开发/开发管理/开发设置
uni.getUserProfile({desc: '需要用到昵称和图像',success: (a) => {console.log(a);this.nickName = a.userInfo.nickNamethis.avatarUrl = a.userInfo.avatarUrluni.login({success: (res) => {console.log(res);this.code = res.codeif (res.code) {uni.request({url: `https://api.weixin.qq.com/sns/jscode2session?appid=${this.appid}&secret=${this.secret}&js_code=${this.code}&grant_type=authorization_code`,success: (resq) => {console.log(resq);let openid = resq.data.openid// uni.request({// url: 'http://ceshi2.dishait.cn/api/v1/user/otherlogin',// method: 'POST',// data: {// provider: 'weixin',// openid: openid,// expires_in: '9999',// nickName: this.nickName,// avatarUrl: this.avatarUrl// },// success: (resp) => {// console.log(resp);// this.getUserInfo(resp.data.data)// uni.switchTab({// url: '../myfile/myfile'// })// }// })}})}}})}})
5.第五步
讲收集到的数据传给接口,成功返回的数据就是登录所用的数据
uni.getUserProfile({desc: '需要用到昵称和图像',success: (a) => {console.log(a);this.nickName = a.userInfo.nickNamethis.avatarUrl = a.userInfo.avatarUrluni.login({success: (res) => {console.log(res);this.code = res.codeif (res.code) {//这里是找的接口请求,返回登录所用的数据uni.request({url: `https://api.weixin.qq.com/sns/jscode2session?appid=${this.appid}&secret=${this.secret}&js_code=${this.code}&grant_type=authorization_code`,success: (resq) => {console.log(resq);let openid = resq.data.openiduni.request({url: 'http://ceshi2.dishait.cn/api/v1/user/otherlogin',method: 'POST',data: {provider: 'weixin',openid: openid,expires_in: '9999',nickName: this.nickName,avatarUrl: this.avatarUrl},success: (resp) => {console.log(resp);//reps.data.data就是用户信息等数据,传到页面使用//this.getUserInfo(resp.data.data)uni.switchTab({url: '../myfile/myfile'})}})}})}}})}})
微信小程序第三方登录相关推荐
- 微信小程序 第三方平台授权小程序业务
image 第一步:申请微信开放平台帐号并创建第三方平台 image.png image.png image.png image.png 第二步:公众号/小程序授权给第三方平台 <?php// ...
- webform窗体怎么实现session唯一标识_微信小程序用户登录和登录态维护的实现_javascript技巧...
这篇文章主要介绍了微信小程序用户登录和登录态维护的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 让用户登录,标识用户和获取 ...
- 微信小程序第三方平台和附近的小程序将开放
2017 年 3 月底,微信小程序接连放了几个大招:第一招:发布小程序 6 大新能力.第二招:再曝小程序 5 大新能力.第三招:微信小程序第三方平台和附近的小程序.而最后一招小程序第三方平台,虽然在微 ...
- php(ThinkPHP)实现微信小程序的登录过程
源码也在我的github中给出 https://github.com/wulongtao/think-wxminihelper 下面结合thinkPHP框架来实现以下微信小程序的登录流程,这些流程是结 ...
- php做微信小程序登录,php(ThinkPHP)实现微信小程序的登录过程
下面结合thinkPHP框架来实现以下微信小程序的登录流程,这些流程是结合了官网和github的一个网站综合实现的 https://mp.weixin.qq.com/debug/wxadoc/dev/ ...
- 微信小程序第三方服务公司有哪些
虽然微信小程序还没有正式推出,但围绕着微信小程序第三方服务公司之间的战争早已经开始.他们在小程序生成工具(一键生成小程序,无需开发).微信小程序开发工具.小程序数据统计等领域展开激烈竞争,我们一起来看 ...
- 微信小程序授权登录 组件的封装
微信小程序授权登录 组件的封装 新建components文件 写wxml文件 wxss部分 js部分 json引用 页面使用 页面js 授权登录 流程如下: 因为多个页面功能需要登录状态 所以做了个组 ...
- SpringBoot微信小程序授权登录
SpringBoot微信小程序授权登录 一.appId 1.1.自己是管理者:微信公众平台,申请或登录自己的微信小程序,在开发者管理中即可看到 2.2.自己是开发者:让管理员将自己加入到小程序开发者管 ...
- uniapp微信小程序授权登录和获取微信绑定的手机号码
uniapp微信小程序授权登录和获取微信绑定的手机号码 弹出授权的弹框 <view class="weixinOk" @tap="getUserProfile&qu ...
最新文章
- FastReport 使用入门
- jdbcTemplate 后台接口中的分页
- RecSys 2019最佳论文:基于深度学习的推荐系统是否真的优于传统经典方法?
- 利用 Python 分析了某化妆品企业的销售情况,我得出的结论是?
- php laravel 调试,php – Xdebug laravel artisan命令
- 21天学通c语言错误,为《21天学通C语言》(第7版)(Sams Teach Yourself C in 21 Days)正名...
- Redis的安装配置与使用
- 频谱泄漏(spectral leakage)
- 解决Python中的TypeError list indices must be integers or slices, not float问题
- 为啥要看javac源代码
- 爬取智联招聘(搜索含关键词职位)
- Android 打电话程序
- python中round函数的使用方法
- php qq授权_PHP模拟QQ网页版授权登陆
- win10兼容模式怎么设置_Win10游戏模式,你真的会用吗?只有这样设置,游戏操作才流畅...
- 智力游戏(搬山游戏)
- c语言程序判断一个字符串是否是回文数,详解判断回文字符串和回文数算法的C语言代码!...
- Give up sending metadata request since no node is available
- 电路图里面的NS是什么意思
- Android音视频开发入门(5)使用LAME编码一个PCM文件,为了跳槽强刷1000道Android真题
热门文章
- Ubuntu20.04安装NVIDIA显卡驱动、CUDA、CUDNN及突破NVENC并发限制
- java编写爬虫_Java怎么写网络爬虫?分分钟带你爬取,源码
- 柳比歇夫的时间管理法—《可以量化…
- linux LED设备驱动文件
- 使用VNC连接树莓派4b如何全屏1080p分辨率,一次更改永久有效!
- NFT“MetaBunny”公开发售后飙升近35倍 首轮公开发售1000枚后结束
- Content Size Fitter组件的使用
- 树莓派3 Android Pie 编译适配
- 最全最精准的IE浏览器判断和国内套壳浏览器判断(360,QQ,搜狗,百度等)
- Python3 parse.urlencode() 与parse.unquote()