微信網頁授權
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. 微信公眾號伺服器配置和網頁授權域名有什麼區別
伺服器配置是微信操作信息發送到你的伺服器配置的額,比如微信點擊事件,微專信接屬收消息事件,各種事件微信會推送給你的伺服器配置中的地址,這個是非必須的,不配置也可以用,網頁授權是必須的,不配置用不了微信公眾號