微信登录,网页授权流程

本文详细介绍了微信登录网页授权的流程,包括用户通过微信客户端请求应用地址,应用服务器拼接授权URL并重定向,微信重定向用户并携带code,服务器获取accesstoken和openid。同时,文章还讲解了如何在Spring Boot中整合第三方SDK实现这一过程。
摘要由CSDN通过智能技术生成

微信登录网页授权流程

1、流程

以下流程为微信官方提供的请求流程,现实中可使用第三方sdk:
https://github.com/Wechat-Group/WxJava/wiki/MP_OAuth2网页授权

在这里插入图片描述

  1. 首先微信客户端请求应用某地址

  2. 应用服务器拼接授权地址,并重定向用户请求到该授权地址。

    授权地址包含:

    • appid:公众号ID
    • ``redirect_url`: 服务器希望用户最终登陆上来的页面地址
    • Scope: 应用授权作用域,snsapi_base (不弹出授权页面,直接跳转,只能获取用户openid),snsapi_userinfo (弹出授权页面,可通过openid拿到昵称、性别、所在地。并且, 即使在未关注的情况下,只要用户授权,也能获取其信息 )
  3. 微信官方将用户的请求重定向到``redirect_url`,并携带code字段

  4. 服务器根据code字段再拼接请求地址,去向微信官方获取accesstoken和openid。

注意:一共有两次地址的拼接。

2、springboot整合第三方sdk

整体流程

  1. 访问"/authorize"(带上目标网址tartgetUrl);
  2. 21行基于20行的url建立请求重定向路径,生成21行入参code, state;
  3. 请求由"/authorize"重定向到了"/userInfo";
  4. "/userInfo"使用入参code获取openid,并使用state重定向到tartgetUrl。
/*
微信OAuth2网页授权登陆接口,微信OAuth2网页授权登陆接口,在你的网站上放上可以扫码登陆,会不会吸引更多用户去注册,现在你只需要简单的配制一下就可以轻松实现,还不快点拿走,微信扫码登陆接口开发你只要需要把配制文件中的APPid、KEY等修改为你自己中你申请的时的就可以,傻瓜式操作,无论你是技术大神还是刚入门的小白,只需修改一下配制文件,便可帮助你实现各种网站登陆。 使用方法 1. 配置网页授权域名 登录微信公众平台后台,在左侧目录底部找到“开发”-“接口权限”,点击进入并在接口列表中找到“网页授权获取用户基本信息”,点击右侧“修改”,在授权回调域名中填自己的域名,例如 www.abc.com,注意此处是域名,不是网址,所以不带http,也不带/等。 2. 修改参数配置 在左侧目录底部找到“开发”-“基本配置”,找到APPID和APPSECRET两个参数的值,其中APPSECRET的值默认是隐藏的,需要微信扫描验证才得显示。 使用Notepad++等编辑器打开,weixin.class.php文件,修改其中的APPID和APPSECRET参数,并保存。 define('APPID', "111111"); define('APPSECRET', "111111"); 3. 上传代码 将Demo代码上传到上述域名网站目录,比如上传到根目录的oauth2目录,这样,该Demo的访问路径将是 http://www.abc.com/oauth2/index.php 4. 访问体验 将上述目录在微信中打开,就可以体验微信的OAuth2.0网页授权过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值