微信公众号网页jsapi授权

微信授权登录并获取用户基本信息

官方文档

详细步骤

  1. 微信公众账号提供用户请求授权页面URL。
  2. 用户点击授权页面URL,将向服务器发起请求
  3. scope为snsapi_base时 服务器询问用户, 用户同意授权给微信公众账号
  4. 服务器跳转页面将CODE回调传给微信公众账号
  5. 微信公众账号通过CODE向服务器请求Access Token 完成授权

实现

  1. 微信公众平台配置 : 必须配置成 https://****
    网页授权域名配置
    此处需要 安全域名的证书必须来自当前域名下,在开发中因为java配置证书为别的域名下。导致在开发者工具中,调用一切正常。在微信端页面一片空白;
    证书
  2. 拼接授权URL

在这里插入图片描述
代码如下

if (this.$route.query.code) {
				this.setAuth();	

				let code = this.$route.query.code
					setAuth({code}).then(data => {
						this.userInfo = data
					})
			} else {
				window.location.href = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=你的appid&redirect_uri=https://www.hzhouse.top&response_type=code&scope=snsapi_userinfo&state=123#wechat_redirect"
}

网页授权重要的是理解过程, 该配置的配好了。代码其实很简单~

获取微信公众号的openid并实现用户授权流程,是开发者在构建基于微信平台的应用时经常会遇到的需求。为了深入了解这一过程,建议参阅《Html5页面获取微信公众号的openid的方法》,其中详细阐述了如何在HTML5页面中与微信公众号进行交互,以及如何处理用户授权获取openid。 参考资源链接:[Html5页面获取微信公众号的openid的方法](https://wenku.csdn.net/doc/6401abf9cce7214c316ea2ce?spm=1055.2569.3001.10343) 首先,需要确认你的HTML5页面是运行在微信浏览器中,并且已经与微信公众号进行了关联。通过检查sessionStorage或localStorage中是否已经存储了openid,可以判断是否需要进行授权操作。如果未存储openid,则需要引导用户进行授权。 接下来,判断URL的查询字符串参数中是否已经包含了'code'。如果存在'code',则可以直接将此'code'发送到后端服务器,以便进一步换取openid。如果不存在'code',则需要通过页面上的JavaScript代码跳转到微信提供的获取'code'的链接,并引导用户完成授权。 用户授权成功后,微信会回调指定的URL,并携带'code'参数。此时,后端服务器可以使用此'code'参数以及你的微信公众号的AppID和AppSecret向微信的服务器请求openid。成功获取到openid后,后端应将此openid存储在用户对应的记录中,并通过接口返回给前端进行本地存储,通常存储在sessionStorage或localStorage中,以便后续使用。 如果需要强制关注公众号获取openid,可以使用jsapi接口生成关注二维码,并弹窗展示。用户扫描二维码关注后,系统将引导用户回到页面,完成授权流程。 在整个过程中,需要特别注意安全性问题,如防止'code'被重复使用,以及保证openid的安全存储和传输。《Html5页面获取微信公众号的openid的方法》不仅提供了一个完整的实现流程,还涉及了这些重要的安全考虑,值得每一位开发者深入学习和实践。 参考资源链接:[Html5页面获取微信公众号的openid的方法](https://wenku.csdn.net/doc/6401abf9cce7214c316ea2ce?spm=1055.2569.3001.10343)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值