接入微信登录: 1、准备工作 1.在微信开放平台https://open.weixin.qq.com/注册成为开发者。 2.在“管理中心”中创建一个移动应用,需“应用名称、简介、及28*28和108*108的PNG图片各一张,且大小不超过300k”,点击下一步,需“应用官网地址,应用签名及包名”等信息,然后即可提交审核。 说明: 应用签名:可在微信开发平台的资源中心》》资源下载》》中下载“签名生成工具”,用户获取已经安装到手机的第三方应用的签名。输入应用包名,即可获得该应用的签名值。 3.提交审核后,在7个工作日内腾讯将给出审核结果。(通常较快,几个小时就可反馈结果) 2、微信登录接入 接入微信登录功能是许多移动应用为了提供便捷的用户注册与登录体验而采取的一种常见策略。本文将详细解析第三方App如何接入微信登录的过程,以及涉及到的关键技术点。 要接入微信登录,开发者需要在微信开放平台(https://open.weixin.qq.com/)上注册成为开发者。在注册成功后,开发者需要在“管理中心”创建一个移动应用,填写必要的信息,如应用名称、简介、应用图标(28*28和108*108的PNG格式),以及应用的官网地址、应用签名和包名。其中,应用签名是验证应用身份的重要凭证,可以使用微信提供的签名生成工具获取,输入应用包名即可得到签名值。提交审核后,通常在7个工作日内会收到腾讯的审核结果。 接入微信登录的核心是遵循OAuth2.0协议的授权码模式。OAuth2.0是一种授权框架,允许第三方应用在用户授权的情况下获取访问特定资源的权限。流程主要包括以下几个步骤: 1. 请求授权码(code):第三方App通过调用微信SDK中的`SendAuth.Req`类发送请求,指定授权范围(如`snsapi_userinfo`),并设置状态标识(state)。当用户授权后,微信会回调到预先设定的`WXEntryActivity`,并将授权码(code)通过`onResp(BaseResp resp)`方法返回。 2. 获取Access Token:客户端收到授权码后,将code发送到服务器端。服务器端使用这个code向微信开放平台请求access_token。请求的URL格式为:`https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code`,其中APPID和SECRET是开发者在微信开放平台申请的唯一标识和密钥。 3. 使用Access Token获取用户信息:微信开放平台会返回一个包含access_token、openid等信息的JSON字符串。利用access_token,服务器可以进一步请求用户的基本信息(如通过`sns/userinfo`接口,需确保在创建应用时选择了“获取用户基本信息”权限)。 4. 服务器端验证和处理:服务器验证access_token的有效性,根据openid确认用户身份,并在本地数据库中创建或更新用户账户。同时,服务器可能会存储access_token以供后续请求使用,但需要注意access_token的有效期,一般为7200秒,过期后需重新获取。 5. 客户端展示结果:客户端收到服务器的响应后,可以根据用户授权状态展示相应的登录结果,如成功登录或显示错误信息。 在整个过程中,安全性和用户体验是关键。开发者需要确保APP签名的一致性,以避免授权页面无法正常显示。同时,对于用户隐私的保护也非常重要,只有在用户明确授权的情况下,才能获取和使用他们的个人信息。 此外,微信登录还涉及到uri、string、token等概念,它们是OAuth2.0协议中的核心元素。uri是请求的统一资源标识符,string常用于表示状态或参数,token则是访问资源的凭证。这些概念在微信登录的实现中起到了关键作用,帮助第三方App安全地与微信开放平台进行交互,为用户提供无缝的登录体验。
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/release/download_crawler_static/13205228/bg1.jpg)
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/default.jpg!1)
- 粉丝: 7
- 资源: 948
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)