QQ、微信、新浪等第三方登录,集成到基于机智云框架的APP上

2023-11-20 12:20

本文主要是介绍QQ、微信、新浪等第三方登录,集成到基于机智云框架的APP上,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

[ 为什么要使用第三方登录]
移动互联网时代,几乎人人手机里面少说有十几个APP,多则四五十个APP,为了避免的APP被攻击后导致的用户数据泄露,通常会将APP分类,常用APP使用密码ABC,重要的APP使用密码XYZ,但是记忆起来很费事。
而产品(APP)接入了第三方登录后,用户跳转到第三方应用,直接在授权页面点击授权即可进入产品,免去了输入密码的环节,让用户登录变得更简单。
[ 第三方登陆的实现原理]
要实现第三方登录的功能首先要明白Oauth2.0国际通用协议,这个协议规定了,允许各大互联网公司的账号在不泄露密码的前提下在其他网站登录,并获取相关信息。依据Oauth2.0协议,我们会首先去各大第三方账号网站注册,获取唯一性id和secret安全码,然后在我们网站集成第三方账号登陆图标。
举个例子
假设你想玩现在很火的一款吃鸡游戏,但是需要使用你的微信账号登录,这时就出现一个授权访问的问题,OAuth2.0协议就是应用于这种场景之下的。
使用第三方应用(吃鸡游戏)登录时,最传统的办法是让用户直接游戏登录页面输账号和密码,但是有的用户觉得注册新账号麻烦(或者APP根本没有提供注册,仅提供关联账号),于是就使用相关的社交账号(微信)通过用户的账号和密码去微信那里获取用户数据,但这样做有很多严重的缺点:
  • 吃鸡游戏需要明文保存用户的微信账号和密码,这样很不安全。
  • 吃鸡游戏拥有了获取用户在微信所有的权限,包括删除好友、给好友发消息、更改密码、注销账号等危险操作。
  • 用户只有修改密码,才能收回赋予吃鸡游戏的权限。但是这样做会使得其他所有获得用户授权的第三方应用程序全部失效。
  • 只要有一个第三方应用程序被破解,就会导致用户密码泄漏,以及所有使用微信登录的网站的数据泄漏。
为了解决以上的问题,OAuth 协议应运而生。
微信作为服务提供商,拥有用户的头像、昵称、好友以及所有的朋友圈内容,吃鸡游戏希望获取用户存储在微信的头像和昵称,假设它们是三个人(吃鸡游戏是帮忙取快递的人,微信是快递员):
  • 吃鸡游戏和微信说,我想要拿用户X的个人快递
  • 微信就说了,你想要获得用户X的快递可以,但是我得先去问问用户X是否同意
  • 用户X 对微信说:我给吃鸡游戏我的取货码和手机号(即一个信用凭证),如果他给你出示了这些,你就把我的快递给他
  • 吃鸡游戏使用户给它的凭证顺利拿到了用户X的快递。
以上是 OAuth 认证的大概流程。在使用微信授权之前,吃鸡游戏需要先在微信开放平台上注册应用,填写自己的名称、logo、用途等信息,微信开放平台颁发给吃鸡游戏一个应用 ID 和叫 APP Secret 的密钥,在实际对接中,会使用到这两个参数。
[ 基于机智云开源框架的APP第三方登陆 ]
基于Oauth2.0国际通用协议规则,要想实现第三方登录“我们必须先在第三方账号网站注册,获取唯一性id和secret安全码”,也就是我们先要前往微信(QQ、新浪)的开放平台申请一个应用,获取应用的AppID和AppSecret,“然后在我们网站集成第三方账号登陆图标”也就是配置到APP(机智云开源框架)中即可。也就是分两步可完成。
第一步:前往第三方的开放平台创建开发者账号,获取应用的AppID和AppSecret,完成审核。
  • 微信开发者平台 open.weixin.qq.com
  • QQ开发者平台 connect.qq.com
  • 新浪开放平台 open.weibo.com
第二步:将AppID和AppSecret填写到开源框架的配置文件UIConfig.json中,部署完事,即可实现第三方登录了。
举个例子
APP要实现微信登陆,必须前往微信开放平台申请一个应用,获取应用的AppID和AppSecret并且配置到开源框架中即可。
  • 前往微信开发平台,获取APPID和APPSecret
  • 将在微信开发平台申请到的APPID和APPSecret填写到开源框架的配置文件UIConfig.json中,如下图 确填写“wechat_app_id”和”wechat_app_secret”后部署运行,即可使用微信登录了。
实现第三方QQ登录同理
  • 先到腾讯开放平台创建一个应用,获取应用的APPID
  • 然后将在腾讯开发平台申请到的APPID填写到开源框架的配置文件UIConfig.json中 确填写“tencent_app_id”后部署运行,即可使用QQ登录了。
还不去机智云自助开发平台 dev.gizwits.com 试试

 

转载于:https://www.cnblogs.com/dapangsen/p/11097691.html

这篇关于QQ、微信、新浪等第三方登录,集成到基于机智云框架的APP上的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/394569

相关文章

Java覆盖第三方jar包中的某一个类的实现方法

《Java覆盖第三方jar包中的某一个类的实现方法》在我们日常的开发中,经常需要使用第三方的jar包,有时候我们会发现第三方的jar包中的某一个类有问题,或者我们需要定制化修改其中的逻辑,那么应该如何... 目录一、需求描述二、示例描述三、操作步骤四、验证结果五、实现原理一、需求描述需求描述如下:需要在

Debezium 与 Apache Kafka 的集成方式步骤详解

《Debezium与ApacheKafka的集成方式步骤详解》本文详细介绍了如何将Debezium与ApacheKafka集成,包括集成概述、步骤、注意事项等,通过KafkaConnect,D... 目录一、集成概述二、集成步骤1. 准备 Kafka 环境2. 配置 Kafka Connect3. 安装 D

Spring AI集成DeepSeek的详细步骤

《SpringAI集成DeepSeek的详细步骤》DeepSeek作为一款卓越的国产AI模型,越来越多的公司考虑在自己的应用中集成,对于Java应用来说,我们可以借助SpringAI集成DeepSe... 目录DeepSeek 介绍Spring AI 是什么?1、环境准备2、构建项目2.1、pom依赖2.2

TP-Link PDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务

《TP-LinkPDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务》近期,路由器制造巨头普联(TP-Link)在用户群体中引发了一系列重要变动,上个月,公司发出了一则通知,明确要求所... 路由器厂商普联(TP-Link)上个月发布公告要求所有用户必须完成实名认证后才能继续使用普联提供的 D

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依

Oracle数据库如何切换登录用户(system和sys)

《Oracle数据库如何切换登录用户(system和sys)》文章介绍了如何使用SQL*Plus工具登录Oracle数据库的system用户,包括打开登录入口、输入用户名和口令、以及切换到sys用户的... 目录打开登录入口登录system用户总结打开登录入口win+R打开运行对话框,输php入:sqlp

Java中Springboot集成Kafka实现消息发送和接收功能

《Java中Springboot集成Kafka实现消息发送和接收功能》Kafka是一个高吞吐量的分布式发布-订阅消息系统,主要用于处理大规模数据流,它由生产者、消费者、主题、分区和代理等组件构成,Ka... 目录一、Kafka 简介二、Kafka 功能三、POM依赖四、配置文件五、生产者六、消费者一、Kaf

macOS怎么轻松更换App图标? Mac电脑图标更换指南

《macOS怎么轻松更换App图标?Mac电脑图标更换指南》想要给你的Mac电脑按照自己的喜好来更换App图标?其实非常简单,只需要两步就能搞定,下面我来详细讲解一下... 虽然 MACOS 的个性化定制选项已经「缩水」,不如早期版本那么丰富,www.chinasem.cn但我们仍然可以按照自己的喜好来更换

SpringCloud集成AlloyDB的示例代码

《SpringCloud集成AlloyDB的示例代码》AlloyDB是GoogleCloud提供的一种高度可扩展、强性能的关系型数据库服务,它兼容PostgreSQL,并提供了更快的查询性能... 目录1.AlloyDBjavascript是什么?AlloyDB 的工作原理2.搭建测试环境3.代码工程1.

python实现自动登录12306自动抢票功能

《python实现自动登录12306自动抢票功能》随着互联网技术的发展,越来越多的人选择通过网络平台购票,特别是在中国,12306作为官方火车票预订平台,承担了巨大的访问量,对于热门线路或者节假日出行... 目录一、遇到的问题?二、改进三、进阶–展望总结一、遇到的问题?1.url-正确的表头:就是首先ur