中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#微信公眾號開發之網頁授權獲取用戶基本信息的示例

發布時間:2021-03-06 13:53:04 來源:億速云 閱讀:285 作者:小新 欄目:移動開發

小編給大家分享一下C#微信公眾號開發之網頁授權獲取用戶基本信息的示例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

前言

這一篇實現snsapi_userinfo,寫這篇時其實我是有疑惑的,因為我并沒有調試成功,但是我反復檢查程序和思路是沒有問題的,因為我使用的測試公眾號,群里一個伙計說他之前調試時用的也是測試公眾號也遇到了和我一樣的問題,然后換上正式公眾號就好了。而且我再三檢查了微信開發文檔里,snsapi_userinfo的方式是要比snsapi_base簡單的,也很好理解。

我先描述下問題吧,snsapi_userinfo的方式是不需要我們關注公眾號的,所以我就在未關注的情下點擊頁面地址跳轉后提示我未關注測試公眾號。

實現思路

有了上一篇網頁授權獲取用戶基本信息一的基礎,再實現snsapi_userinfo就更快了,一路調接口。

1、先獲取code

2、根據code獲取網頁授權access_token和openid。 這里微信對access_token是有調用限制的,每天12次,所以拿到access_token后緩存起來。

3、根據access_token和openid獲取用戶信息。

看代碼

 public ActionResult OAuthSnsApiUserInfo()  
 {        
 string code = Request.QueryString["code"];        
 try        
 {             
 if (!string.IsNullOrEmpty(code))             
 {                 
 OAuthToken oauthToken = HttpUtility.Get<OAuthToken>
 (string.Format("https://api.weixin.qq.com/sns/oauth3/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code", appID, appsecret, code));
if (oauthToken != null && !string.IsNullOrEmpty(oauthToken.openid) && !string.IsNullOrEmpty(oauthToken.access_token))                    
{                        
OAuthUserInfo userInfo = Get
<OAuthUserInfo>(string.Format("https://api.weixin.qq.com/sns/userinfo?access_token={0}&openid={1}&lang=zh_CN", oauthToken.access_token, oauthToken.openid));
if (userInfo != null)                        
{                            
ViewData["headImage"] = userInfo.headimgurl;                            
ViewData["openid"] = userInfo.openid;                            
ViewData["nickName"] = userInfo.nickname;                            
if (userInfo.sex == 0)                            
{                                
ViewData["sex"] = "未知";                            
}                            
else if (userInfo.sex == 1)                            
{                                
ViewData["sex"] = "男";                            
}                            
else                            
{                                
ViewData["sex"] = "女";                            
}                            
ViewData["province"] = userInfo.province;                            
ViewData["city"] = userInfo.city;                        
}                        
else                        
{                        
}                    
}                    
else                    
{                           
}                
}                
else                
{                    
return Redirect(string.Format("https://open.weixin.qq.com/connect/oauth3/authorize?appid={0}&redirect_uri={1}&response_type=code&scope=snsapi_userinfo&state=123456
#wechat_redirect", appID,Server.UrlEncode("http://" + Request.Url.Host + Url.Action("OAuthSnsApiUserInfo"))));             
}        
}       
catch (Exception ex)      
{            
ViewData["errmsg"] = ex.Message;      
}                  
return View(); 
}

總結

網頁授權二里獲取用戶信息的接口是:https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN。

以上是“C#微信公眾號開發之網頁授權獲取用戶基本信息的示例”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

马关县| 新巴尔虎右旗| 师宗县| 南昌县| 塘沽区| 闻喜县| 隆化县| 宜都市| 永新县| 昌乐县| 城口县| 西吉县| 鹿邑县| 林口县| 迁西县| 青田县| 黔东| 旺苍县| 上思县| 镇康县| 呼和浩特市| 昭苏县| 临邑县| 日喀则市| 内丘县| 芜湖县| 聂荣县| 抚顺县| 开远市| 高要市| 海淀区| 沿河| 连山| 宾川县| 永新县| 巩义市| 响水县| 海淀区| 潍坊市| 武功县| 宁武县|