微信网页授权
A. 怎么开启微信网页授权获取用户基本信息
1、以snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的openid的,并且是静默授权并自动跳转到回调页的。用户感知的就是直接进入了回调页(往往是业务页面)
2、以snsapi_userinfo为scope发起的网页授权,是用来获取用户的基本信息的。但这种授权需要用户手动同意,并且由于用户同意过,所以无须关注,就可在授权后获取该用户的基本信息。
3、用户管理类接口中的“获取用户基本信息接口”,是在用户和公众号产生消息交互或关注后事件推送后,才能根据用户OpenID来获取用户基本信息。这个接口,包括其他微信接口,都是需要该用户(即openid)关注了公众号后,才能调用成功的。
B. 微信web开发者工具如何进行调试微信网页授权
具体操作步骤为:
开发者可以在调试器中点击“登录”,使用手机微信扫码登录,从而使用真实的用户身份来开发和调试微信网页授权。请确认手机登录页,绑定的公众号为“微信 web 开发者工具”,如下图所示:
为了保证开发者身份信息的安全,对于希望调试的公众号,我们要求开发者微信号与之建立绑定关系。具体操作为:公众号登录管理后台,启用开发者中心,在开发者工具——web 开发者工具页面,向开发者微信号发送绑定邀请。
开发者在手机微信上接受邀请,即可完成绑定。每个公众号最多可同时绑定10个开发者微信号。
完成登录和绑定后,开发者就可以开始调试微信网页授权了:
非静默授权的 URL: https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx841a97238d9e17b2&redirect_uri=http://cps.dianping.com/weiXinRedirect&response_type=code&scope=snsapi_userinfo&state=type%3Dquan%2Curl%3Dhttp%3A%2F%2Fmm.dianping.com%2Fweixin%2Faccount%2Fhome
点击“确认登录”即可带着用户信息跳转到第三方页面,很方便的进行后续的开发和调试。
静默授权的 URL: https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx841a97238d9e17b2&redirect_uri=http://cps.dianping.com/weiXinRedirect&response_type=code&scope=snsapi_base&state=type%3Dquan%2Curl%3Dhttp%3A%2F%2Fmm.dianping.com%2Fweixin%2Faccount%2Fhome
在微信 web 开发者工具中打开该 URL 则会自动跳转到第三方页面。
C. 微信公众平台服务号推出的OAuth2.0网页授权功能有什么作用
类似现在很多网站上的 QQ帐号登录 也就是说 如果网站接入了网页授权功能 用户就可以通过微信登录网站 不需要另外注册会员帐号 但是现在好像只能通过微信访问网站才行
D. 微信网页授权登陆,第一次用户授权后,用户再次进入页面时,如何判断已经授权过了
写Cookies 或者_SESSION保存用户唯一数据,然后判断数据
E. 微信网页授权静默授权是每次点击菜单都要授权一次吗
不是, 一次授权就可以了。
F. 微信如何取消网页授权登录
微信取消网页授权登录一般来说无法取消的,但是也可以尝试一下有四种办法:拨打微信客服电话、恢复手机出厂设置、清理微信缓存、重新安装微信。
具体清除微信缓存的具体步骤:
1.
打开手机桌面的微信:
2.
进入微信之后,点击设置:
3.
进入界面后,点击通用:
4.
进入界面后,点击存储空间:
5.
进入界面后,可点击下图画框的两个选择项,即可清除:
G. 如何获取微信网页授权
具体而言来,网页授权流程分源为四步:
1、引导用户进入授权页面同意授权,获取code
2、通过code换取网页授权access_token(与基础支持中的access_token不同)
3、如果需要,开发者可以刷新网页授权access_token,避免过期
4、通过网页授权access_token和openid获取用户基本信息(支持UnionID机制)
H. 微信如何设置开发者中心的 “OAuth2.0”网页授权
需要在微信公众后台配置授权回调域名,配置注意事项请参考公众平台接口详细说明,配置成功后,可以通过请求授权页面,直到授权后重定向到回调地址。
具体操作:粘贴如下代码:
public ActionResult WXBind()
{
string sUrl = "/oauth2/access_token?appid=" + ViewUtil.WXappID + "&secret=" + ViewUtil.WXappsecret + "&code=" + Request["code"] + "&grant_type=authorization_code";
WebClient webClient = new WebClient();
Byte[] bytes = webClient.DownloadData(sUrl);
string result = Encoding.GetEncoding("utf-8").GetString(bytes);
JSONObject obj = JSONConvert.DeserializeObject(result);
string sParam = Request["state"];
string sRedictUrl = "";
switch (sParam)
{
case "myorder":
sRedictUrl = "/Account/Order?OpenID=" + obj["openid"] +"&Param=order";
break;
case "book":
sRedictUrl = "/Book/WXHotels";break;
default:
sRedictUrl = "/Account/Index?OpenID={0}" + obj["openid"];
break;
}
Response.Redirect(sRedictUrl);
return View();
}
I. 微信公众号服务器配置和网页授权域名有什么区别
服务器配置是微信操作信息发送到你的服务器配置的额,比如微信点击事件,微专信接属收消息事件,各种事件微信会推送给你的服务器配置中的地址,这个是非必须的,不配置也可以用,网页授权是必须的,不配置用不了微信公众号