.NET自動獲取Token,web
我就直接上圖片了,後面是完整代碼,能夠複製到你的項目,json
我這個方法有點笨,可是沒有任何問題api
--------------------------------------------------------------從下方開始複製------------------------------------------------------app
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Web; using System.Web.Script.Serialization; using WeChat.Models;url
namespace WeChat.DAL {spa
public class WeChatCommon { #region 獲取Access_tokencode
/// <summary> /// Token /// </summary> private static string _access_token { get; set; } /// <summary> /// 時間,用來判斷是否該更新了 /// </summary> private static int _datetime = 0;orm
/// <summary> /// Access_token,每一個小時獲取一次 /// </summary> private static string Access_token { get { //第二次判斷防止屢次申請 if (_datetime != DateTime.Now.Hour) { _datetime = DateTime.Now.Hour; if (GetAccess_token()) return _access_token; else return null; } else return _access_token; } } #endregionblog
#region 獲取Access_token /// <summary> /// 返回Access_token /// </summary> /// <returns></returns> private static string ReturnAccess_token() { //第一次判斷,每小時刷新一次Token,此處帶鎖 if (_datetime != DateTime.Now.Hour) { lock (Access_token) { return Access_token; } } return _access_token;token
}
/// <summary> /// 獲取GetAccess_token /// </summary> /// <returns>Access_token</returns> private static bool GetAccess_token() { string Secret = ""; string APPID = ""; //url string uri =string.Format( @"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}",APPID,Secret);
//初始化http請求 HttpWebRequest request = HttpWebRequest.Create(uri) as HttpWebRequest; request.Method = "GET";//請求方法 request.AllowAutoRedirect = false;//禁止重定向
//獲取返回的信息 using (WebResponse web = request.GetResponse()) { StreamReader reader = new StreamReader(web.GetResponseStream(), Encoding.UTF8); string json = reader.ReadToEnd(); JavaScriptSerializer js = new JavaScriptSerializer(); Access_token access_token = js.Deserialize<Access_token>(json);
if (access_token.errcode != "41004" && access_token.errcode != null) { _access_token = access_token.access_token; return true; } else return false;
} }
#endregion } }
-------------------------------------------------------------------------------------------------------
點擊連接加入羣【ASP.NET鷹組】:http://jq.qq.com/?_wv=1027&k=2ERJ0qo
ASP.NET鷹組 460845632