当前位置: 代码网 > it编程>编程语言>Javascript > vue3 uniapp微信登录功能实现

vue3 uniapp微信登录功能实现

2024年05月28日 Javascript 我要评论
根据最新的微信小程序官方的规定,uniapp中的uni.getuserinfo方法不再返回用户头像和昵称、以及手机号首先,需获取appid,appsecret,如下图先调用uni.getuserinf

根据最新的微信小程序官方的规定,uniapp中的uni.getuserinfo方法不再返回用户头像和昵称、以及手机号

首先,需获取appid,appsecret,如下图

先调用uni.getuserinfo方法获取code,然后调用后台的api,传入code,换取登录信息比如openid什么的,然后调用后台的例如账号密码或者手机验证码等相关登录的接口,换取token存入本地,即可。

uni.getuserinfo({
			provider: 'weixin',
			success: function(info) {
				// 获取用户信息成功, info.authresult保存用户信息
				uni.login({
					provider: 'weixin',
					success: function(loginres) {
						console.log(loginres, '---loginres')
						wxloginapi({
							code: loginres.code
						}).then(res => {
							if (res.code === '200') {
								loginparamobj.value = res.data;
								if (loginparamobj.value.bindstatus === '1') {
											//已绑定,直接登录
									// userstore.set_fresh_token(res.data.refresh_token)
								} else {
									// 留在登录页
									initloginstatus.value = true
								}
							}
						})
					},
					fail: function(err) {
						// 登录授权失败
						// err.code是错误码
					}
				});
			}
		})

登录后要配合pinia,将token存入本地即可

import {
	definestore
} from 'pinia'
const user = definestore(
	'user', () => {
		const token = ref(''); // 登录token
		const fresh_token = ref('');
		const set_token = (value : string) => {
			token.value = value
		};
		const set_fresh_token = (value : string) => {
			fresh_token.value = value
		};
		return {
			token,
			fresh_token,
		}
	}, {
	unistorage: true // 开启后对 state 的数据读写都将持久化
})
// const user = ()=>{
// }
export default user

到此这篇关于vue3 uniapp微信登录的文章就介绍到这了,更多相关vue3 uniapp微信登录内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com