微信小程序记录(持续更新)

1.登录相关

登录简单来说就是用uni.login获取登陆凭证code。然后调用后台登录接口传递给后台,后台解码再返回token等一系列信息给前端

参考地址:

微信小程序获取用户手机号码教程(前端+后端)_微信小程序获取手机号-CSDN博客

代码

复制代码
login() {
				let _this = this;
				// 获取登录用户code

				uni.login({
					provider: 'weixin',
					success: function(res) {
						console.log(res,'res')
						if (res.code) {
							let code = res.code;
							//微信授权的人员信息
							uni.setStorageSync("wxUserInfo", _this.userInfo);

							uni.request({
								url: $newApi.AuthLoginByWeixin,
								method: 'GET',
								data: {
									code: code,
									// userInfo: _this.userInfo,
									tenant:_this.tenant
								},
								header: {
									'content-type': 'application/json', //自定义请求头信息
									'tenant':_this.tenant,							
								},
								success: function(res) {
									console.log("授权登录", res);
									uni.setStorageSync("userInfo", res.data.userInfo);
									_this.openid = res.data.userInfo.openid;
									if (res.data.token && res.data.token != '') {
										uni.setStorageSync("token", res.data.token);
									}
									if (_this.pageName == '/pages/home/studentHome') {
										uni.switchTab({
											url: _this.pageName
										})
									} else {
										//存在sessionId则直接去扫码的页面,没有的话就去获取手机号码
										if (res.data.userInfo.sessionId && res.data.userInfo
											.sessionId.length > 0) {
											console.log("if", _this.pageName)
											uni.navigateTo({
												url: _this.pageName,
												success(res) {
													console.log(res)
												},
												fail(err) {
													console.log(err);
													uni.switchTab({
														url: _this.pageName
													})
												}
											})
										} else {
											console.log("else")
											// _this.updateUserInfo()
										}

									}
								},
								fail: (error) => {
									console.log("授权登录失败", error)
								},
								complete: (res) => {}
							});

						} else {
							uni.showToast({
								title: '登录失败!',
								duration: 2000
							});
						}
					},
				});
			},
相关推荐
2501_915106322 小时前
app 上架过程,安装包准备、证书与描述文件管理、安装测试、上传
android·ios·小程序·https·uni-app·iphone·webview
2501_915106322 小时前
使用 Sniffmaster TCP 抓包和 Wireshark 网络分析
网络协议·tcp/ip·ios·小程序·uni-app·wireshark·iphone
宠友信息3 小时前
2025社交+IM及时通讯社区APP仿小红书小程序
java·spring boot·小程序·uni-app·web app
“负拾捌”4 小时前
python + uniapp 结合腾讯云实现实时语音识别功能(WebSocket)
python·websocket·微信小程序·uni-app·大模型·腾讯云·语音识别
换日线°1 天前
NFC标签打开微信小程序
前端·微信小程序
光影少年1 天前
AIGC + Taro / 小程序
小程序·aigc·taro
2501_915918411 天前
在 iOS 环境下查看 App 详细信息与文件目录
android·ios·小程序·https·uni-app·iphone·webview
2501_916007471 天前
没有 Mac 用户如何上架 App Store,IPA生成、证书与描述文件管理、跨平台上传
android·macos·ios·小程序·uni-app·iphone·webview
天空属于哈夫克31 天前
Go 语言实战:构建一个企微外部群“技术贴收藏夹”小程序后端
小程序·golang·企业微信
菜鸟una1 天前
【微信小程序+Taro 3+NutUI 3】input (nut-input) 、 textarea (nut-texteare)类型使用避坑
前端·vue.js·微信小程序·小程序·taro