微信第三方登录步骤
微信第三方登录步骤详细描述
第一步:第三方发起微信授权登录请求
当用户点击第三方应用的登录按钮时,第三方应用会向微信开放平台发送一个授权登录请求。这个请求包含以下信息:
* `appid`: 第三方应用的唯一标识符。
* `redirect_uri`: 授权成功后,用户将被重定向到的 URL。
第二步:微信用户允许授权第三方应用
当微信接收到第三方应用的授权登录请求时,它会弹出一个授权窗口,询问用户是否同意授权第三方应用。用户可以选择“同意”或“拒绝”。
如果用户选择“同意”,则微信会向第三方应用返回一个临时票据 `code`。
第三步:微信拉起应用或重定向到第三方网站
当微信向第三方应用返回 `code` 后,它会根据 `redirect_uri` 的值决定如何处理。有两种可能的情况:
* 如果 `redirect_uri` 指向一个 URL,则微信会将用户重定向到该 URL,并带上 `code` 作为参数。
* 如果 `redirect_uri` 指向一个应用,则微信会拉起该应用,用户可以在应用中进行授权。
第四步:第三方应用获取临时票据 code
当用户被重定向到第三方应用或拉起应用后,第三方应用需要获取 `code` 的值。这个 `code` 是一个临时票据,可以用来换取 access_token 和 openid。
第五步:第三方应用发送请求获取 access_token
第三方应用需要将 `code` 发送到微信开放平台的接口 `/connect/token` 以获取 access_token 和 openid。
* 请求方法:POST* 请求参数:
* `grant_type`: 固定值为 `authorization_code`
* `appid`: 第三方应用的唯一标识符 * `redirect_uri`: 授权成功后,用户将被重定向到的 URL * `code`: 临时票据第六步:微信开放平台返回 access_token 和 openid
当微信接收到第三方应用的请求后,它会返回一个 JSON 对象,其中包含 access_token 和 openid。
* `access_token`: 第三方应用可以使用这个 token 来访问用户的信息。
* `openid`: 用户在微信开放平台上的唯一标识符。
第七步:第三方应用使用 access_token 获取用户信息
第三方应用可以使用 access_token 来获取用户的基本信息,例如昵称、头像等。
总结
微信第三方登录是一个复杂的过程,涉及多个步骤和接口。第三方应用需要向微信开放平台发送授权登录请求,并根据返回结果进行处理。最后,第三方应用可以使用 access_token 来获取用户信息并进行后续操作。
以下是完整的流程图:
1. 第三方发起微信授权登录请求2. 微信用户允许授权第三方应用3. 微信拉起应用或重定向到第三方网站,并带上授权临时票据 code 参数4. 第三方应用获取临时票据 code5. 第三方应用发送请求获取 access_token6. 微信开放平台返回 access_token 和 openid7. 第三方应用使用 access_token 获取用户信息