uniapp实现手机号一键登录功能

这篇具有很好参考价值的文章主要介绍了uniapp实现手机号一键登录功能。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1,第一步

HBuilder X开发者工具账号要和开发者中心控制台账号保持一致。

2,第二步

手机号码 一键登录 开发,uniapp,阿里云,腾讯云,云计算

手机号码 一键登录 开发,uniapp,阿里云,腾讯云,云计算
创建应用要和项目uni-appid一致。

3,第三步

手机号码 一键登录 开发,uniapp,阿里云,腾讯云,云计算

开通一建登录基础配置,注:本地测试无需开通右下角 添加应用。 (项目上线打包时在更新添加应用步骤)
ApiKey和ApiSecret 是换取手机号和计费凭证关键。

4,第四步

创建云函数空间

手机号码 一键登录 开发,uniapp,阿里云,腾讯云,云计算

手机号码 一键登录 开发,uniapp,阿里云,腾讯云,云计算

5,第五步

手机号码 一键登录 开发,uniapp,阿里云,腾讯云,云计算

在项目里面创建云开发环境,会显示 阿里云和腾讯云,看第四步自己创建的什么空间就选哪个。

6,第六步

右键点击cloudfunctions创建云函数getPhoneNumber。

手机号码 一键登录 开发,uniapp,阿里云,腾讯云,云计算
手机号码 一键登录 开发,uniapp,阿里云,腾讯云,云计算

在index文件夹里面写入代码
// getPhoneNumber里面index.js文件写入
'use strict';
exports.main = async (event, context) => {
	//event为客户端上传的参数
	console.log('event : ', event);
	console.log('参数', event.queryStringParameters);
	// event里包含着客户端提交的参数
	const res = await uniCloud.getPhoneNumber({
		appid: '',// 在manifest.json里面可以找到
		provider: 'univerify',
		apiKey: '',// 在DCloud开发者中心开通一键登录基础服务时自动生成的
		apiSecret: '',// 开通一键登录基础服务时自动生成的
		access_token: event.access_token,
		openid: event.openid
	});
		
	console.log('res',res); // res里包含手机号
	// 执行用户信息入库等操作,正常情况下不要把完整手机号返回给前端
	// 如果数据库在uniCloud上,可以直接入库
	// 如果数据库不在uniCloud上,可以通过 uniCloud.httpclient API,将手机号通过http方式传递给其他服务器的接口,详见:https://uniapp.dcloud.net.cn/uniCloud/cf-functions?id=httpclient
	return {
		code: 0,
		message: '获取手机号成功',
		data:res
	}
};

还需要在package.json里面设置,直接复制就行,写完之后右键点击getPhoneNumber文件上传部署
{
  "name": "univerify",
  "dependencies": {},
  "extensions": {
    "uni-cloud-jql": {},
	"uni-cloud-verify": {}
  }
}

7,第七步

在项目manifest.json里面配置一键登录。

手机号码 一键登录 开发,uniapp,阿里云,腾讯云,云计算文章来源地址https://www.toymoban.com/news/detail-595351.html

8,第八步 (实现代码)

// 看大家实际项目登录逻辑自行添加

// 这一步写不写问题都不大
uni.getProvider({ //获取可用的服务提供商
	service: 'oauth',
	success: function(res) {
		console.log("000111",res.provider) // ['weixin', qq', 'univerify']
	}
});


uni.preLogin({
	provider: 'univerify',
	success(res){  //预登录成功
		console.log("预登陆",res)
		// 显示一键登录选项
		
		uni.login({ //正式登录,弹出授权窗
		provider: 'univerify',
		univerifyStyle: {
			"fullScreen": true, // 是否全屏显示,默认值: false
			"backgroundColor": "#ffffff",  // 授权页面背景颜色,默认值:#ffffff
		}, // 自定义登录框样式 
			success(res) {
				console.log('login',res);
				// 在得到access_token后,通过callfunction调用云函数
				uniCloud.callFunction({
					name: 'getPhoneNumber', // 云函数名称
					data: { //传给云函数的参数
						'access_token': res.authResult.access_token, // 客户端一键登录接口返回的access_token
						'openid': res.authResult.openid // 客户端一键登录接口返回的openid
					},
					success(callRes) {
						console.log('调用云函数成功', callRes);
						//获取手机号成功返回手机号
					},
					fail(callErr) {
							console.log('调用云函数出错', callErr);
					},
					complete() {
							uni.closeAuthView(); //关闭授权登录界面
					}
					})
				},
				fail(err) { // 正式登录失败
					console.log(err)
					uni.closeAuthView(); //关闭授权登录界面
				}
			})
		
	},
	fail(err){  // 预登录失败
		console.log(err.errMsg)
	}
})
			
一建登录步骤到此结束,欢迎大家讨论和指导,登录弹窗本文设置的是全屏‘fullScreen’,大家可根据需求编辑,弹窗只能在手机端app才能显示。

到了这里,关于uniapp实现手机号一键登录功能的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp小程序 手机号授权一键登录 小程序接口调用getPhoneNumber java+uniapp

    uniapp 前端 uniapp登录按钮: (在button加上这俩个参数) open-type=\\\"getPhoneNumber\\\" @getphonenumber=\\\"getPhoneNumber\\\" methods方法区 getPhoneNumbe(e) 这个 e 就是登录用户 小程序的code值 code值后续用于请求 小程序官方接口 来获取用户手机号 后端调用逻辑  大致逻辑分为以下几个步骤            

    2024年02月02日
    浏览(59)
  • Taro:微信小程序通过获取手机号实现一键登录

            本文介绍如果通过微信小程序的getPhoneNumber方法获取用户微信绑定的手机号并自动注册登录。 1、按钮类型 openType 指定 \\\"getPhoneNumber\\\"   2、@getphonenumber必须全部小写 code:手机号获取凭证:动态令牌。可通过动态令牌换取用户手机号。         后台根据前端传入

    2024年02月16日
    浏览(63)
  • 手机号一键授权登录页面

        源码地址:https://ext.dcloud.net.cn/plugin?id=12272

    2024年02月03日
    浏览(52)
  • UNIAPP---实现微信小程序登录授权和手机号授权(uniapp做微信小程序)

    描述:uniapp开发小程序,先授权用户信息后再出现手机号授权的页面进行手机号授权。完成后返回上一页面并把信息存入后台以及前台缓存中,方便使用。 1.在uniapp的manifest.json进行微信小程序配置 2.封装request请求api.js(如果已封装可跳过) 3.封装微信授权登录以及获取手机

    2024年02月11日
    浏览(46)
  • 【微信小程序】新版获取手机号码实现一键登录(uniapp语法)(完整版附源码)

    需求 如图,点击按钮,获取用户手机号实现一键登录,当然,用户也可以自行输入其他手机号进行登录 问题 要想获取用户手机号并不复杂,但由于近几年微信小程序获取手机号的api进行了更新,当前很多帖子使用的仍是旧的方式,先调wx.login()获取code,iv,等等加密数据, 给到

    2024年02月05日
    浏览(53)
  • 小程序获取手机号和用户信息一键登录

    1、一建获取用户信息 以前可以通过 button open-type=\\\"getUserInfo\\\" 一键登录/button 来实现一建获取用户信息; 2021年4月28日24时后发布的小程序新版本,无法通过wx.getUserInfo与获取用户个人信息(头像、昵称、性别与地区) 新增 getUserProfile 接口(基础库2.10.4版本开始支持),可获取

    2024年02月09日
    浏览(53)
  • 微信小程序静默登录+一键手机号绑定

    //在app.js里有小程序写好的模板,直接调用既可 //后端代码逻辑如下 1.先接收到小程序端传过来的code 2然后微信开发文档获取到你的appid和screct https://mp.weixin.qq.com/ 3接着获取到你的sppid,和 session_key,去库里查看是否有sppid一样的用户,如果有更新session_key,如果没有就将你获取到

    2024年02月09日
    浏览(45)
  • uniapp(vue3) - 详解微信小程序平台用户授权登录全流程,uniapp v3版本中小程序端开发下用户点击登录后获取手机号/昵称/性别/头像等信息完成登录(提供完整示例代码,一键复制开箱即用)

    在uniapp(v3)微信小程序端开发中,超详细实现用户授权登录完整功能源码,用户授权后获取手机号/昵称/头像/性别等,提供完整思路流程及逻辑讲解。 你也可以直接复制粘贴,然后改下参数放到你的项目中去就行。 做功能之前,先

    2024年02月05日
    浏览(58)
  • 基于uniapp+java实现微信小程序无感登录,授权手机号登录,获取昵称头像,获取定位信息

    使用uniapp开发微信小程序,避免不了微信登录。但自动微信2022年升级了api版本后,不再允许返回昵称和头像信息,所以才出现无感登录或授权手机号登录。实现方式大同小异。 java后端所需maven 前端实现代码: 由于使用uni.login并不需要用户授权,所以能做到无感登录。 后端

    2024年02月16日
    浏览(68)
  • 在uni-app中使用手机号一键登录

    https://dev.dcloud.net.cn/uniLogin 开通一键登录服务, 获取关键最关键的两个参数  ApiKey  和  ApiSecret 真机调试无需添加应用,如需打包使用请添加。一键登录应用ID为离线打包时配置的appid https://unicloud.dcloud.net.cn/home      新建云函数后会有一个index.js【 getPhoneNumber/index.js 】生成,

    2023年04月23日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包