.Net實現微信公眾平台開發接口(二) 之 “獲取access_token”


access_token是公眾號的全局唯一票據,公眾號調用各接口時都需使用access_token。

接口調用請求說明

http請求方式: GET
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

參數說明

 

參數 是否必須 說明
grant_type 獲取access_token填寫client_credential
appid 第三方用戶唯一憑證
secret 第三方用戶唯一憑證密鑰,即appsecret

返回說明

正常情況下,微信會返回下述JSON數據包給公眾號:

{"access_token":"ACCESS_TOKEN","expires_in":7200}
參數 說明
access_token 獲取到的憑證
expires_in 憑證有效時間,單位:秒


錯誤時微信會返回錯誤碼等信息,JSON數據包示例如下(該示例為AppID無效錯誤):

{"errcode":40013,"errmsg":"invalid appid"}

具體實現的代碼如下:
//獲取微信憑證access_token的接口
        public static string getAccessTokenUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}";

        #region 獲取微信憑證
        public string GetAccessToken(string wechat_id)
        {
            string accessToken = "";
            //獲取配置信息Datatable
            DataTable dtwecaht = wechatdal.GetList("wechat_id='" + wechat_id + "'").Tables[0];

            if (dtwecaht.Rows.Count > 0)
            {
                string respText = "";
                //獲取appid和appsercret
                string wechat_appid = dtwecaht.Rows[0]["wechat_appid"].ToString();
                string wechat_appsecret = dtwecaht.Rows[0]["wechat_appsecret"].ToString();
                //獲取josn數據
                string url = string.Format(getAccessTokenUrl, wechat_appid, wechat_appsecret);

                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();

                using (Stream resStream = response.GetResponseStream())
                {
                    StreamReader reader = new StreamReader(resStream, Encoding.Default);
                    respText = reader.ReadToEnd();
                    resStream.Close();
                }
                JavaScriptSerializer Jss = new JavaScriptSerializer();
                Dictionary<string, object> respDic = (Dictionary<string, object>)Jss.DeserializeObject(respText);
                //通過鍵access_token獲取值
                accessToken = respDic["access_token"].ToString();
            }

            return accessToken;
        }
        #endregion 獲取微信憑證

后面調用接口的時候,就直接調用這個方法獲取access_token即可。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM