15158846557 在线咨询 在线咨询
15158846557 在线咨询
所在位置: 首页 > 营销资讯 > 网站运营 > 微信公共号网页授权

微信公共号网页授权

时间:2022-08-06 20:30:02 | 来源:网站运营

时间:2022-08-06 20:30:02 来源:网站运营

微信公共号(服务号和订阅号)授权获取openid 和用户信息

1:在公共号配置 回调地址域名
配置域名路径
开发-接口权限-OAuth2.0网页授权 (只能配置一个域名)
2:授权方式,静默授权和非静默授权

2-1、以snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的openid的,


并且是静默授权并自动跳转到回调页的。用户感知的就是直接进入了回调页

2-2、以snsapi_userinfo为scope发起的网页授权,是用来获取用户的基本信息的。

但这种授权需要用户手动同意,并且由于用户同意过,所以无须关注,就可在授权后

获取该用户的基本信息。

3:根据授权地址获取code

3-1:编写回调方法(java中 编写一个action),回调地址用urlencode转码
例如我的回调地址为:https://m.biqu.panatrip.cn/embed/hongbao/lingqu
转换后:https%3A%2F%2Fm.biqu.panatrip.cn%2Fembed%2Fhongbao%2Flingqu

例子授权地址:https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx5ef54e044b7e4ce5&redirect_uri=https%3A%2F%2Fm.biqu.panatrip.cn%2Fembed%2Fhongbao%2Flingqu&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect

参数说明:
appid 公众号的唯一标识
redirect_uri 授权后重定向的回调链接地址,请使用urlencode对链接进行处理
response_type 返回类型,请填写code
scope 应用授权作用域,snsapi_base (不弹出授权页面,直接跳转,只能获取用户 openid),
snsapi_userinfo (弹出授权页面,可通过openid拿到昵称、性别、所在地。并且,即使在未关注的情况下,只要用户授权,也能获取其信息)
state 重定向后会带上state参数,开发者可以填写a-zA-Z0-9的参数值,最多128字节
#wechat_redirect 无论直接打开还是做页面302重定向时候,必须带此参数

3-2:在回调方法中 get到code和state参数
String code = request.getParameter("code");
String state = request.getParameter("state");

4:获取用户的openid,token(调用微信接口 http协议 get请求)
接口地址:https://api.weixin.qq.com/sns/oauth2/access_token
传入参数:
appid 公众号的唯一标识
secret 公众号的appsecret
code 填写第一步获取的code参数
grant_type 填写为authorization_code

返回参数
access_token 网页授权接口调用凭证,注意:此access_token与基础支持

的 access_token不同
expires_in access_token接口调用凭证超时时间,单位(秒)
refresh_token 用户刷新access_token
openid 用户唯一标识,请注意,在未关注公众号时,用户访问公众号的网页,也会产 生一个用户和公众号唯一的OpenID
scope 用户授权的作用域,使用逗号(,)分隔

5:拉取用户信息(需scope为 snsapi_userinfo)
接口地址:https://api.weixin.qq.com/sns/userinfo
传入参数:
access_token 网页授权接口调用凭证,注意:此access_token与基础支持的access_token不同
openid 用户的唯一标识
lang 返回国家地区语言版本,zh_CN 简体,zh_TW 繁体,en 英语

返回参数:
penid 用户的唯一标识
nickname 用户昵称
sex 用户的性别,值为1时是男性,值为2时是女性,值为0时是未知
province 用户个人资料填写的省份
city 普通用户个人资料填写的城市
country 国家,如中国为CN
headimgurl 用户头像,最后一个数值代表正方形头像大小(有0、46、64、96、132数值可选,0代表640*640正方形头像),用户没有头像时该项为空。若用户更换头像,原有头像URL将失效。
privilege 用户特权信息,json 数组,如微信沃卡用户为(chinaunicom)
unionid 只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段。

微信开发者文档地址:

https://mp.weixin.qq.com/wiki/4/9ac2e7b1f1d22e9e57260f6553822520.html

关键词:授权,公共

74
73
25
news

版权所有© 亿企邦 1997-2025 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭