獲取微信Ticket接口


public static class JssdkTicketApi
{
private static object locker = new object();
private static Dictionary<string, DateTime> expiresDic = new Dictionary<string, DateTime>();
private static Dictionary<string, string> ticketDic = new Dictionary<string, string>();

/// <summary>
/// 獲得Ticket
/// </summary>
/// <returns></returns>
public static string GetJssdkTicket(string appid, string secret)
{
//異步加鎖
lock (locker)
{
DateTime now = DateTime.Now;
//獲得過期時間
DateTime expires = expiresDic.ContainsKey(appid) ? expiresDic[appid] : now;
double span = (now - expires).TotalSeconds;

//如果ticket不存在,或者超過7000秒,則重新獲取token
if (!ticketDic.ContainsKey(appid) || span > 7000)
{
string access_token = TokenApi.GetToken(appid, secret);
//DbHelperSQL.ExecuteSql("insert into test (content) values ('" + access_token + "')");
string ticketUrl = "https://qyapi.weixin.qq.com/cgi-bin/get_jsapi_ticket?access_token=" + access_token;
string json = Utilities.HttpHelper.GetJson(ticketUrl);
JssdkTicket jssdkTicket = Utilities.JsonHelper.JsonToObject<JssdkTicket>(json);

//緩存token
ticketDic.Remove(appid);
ticketDic.Add(appid, jssdkTicket.ticket);

//過期時間
expiresDic.Remove(appid);
expiresDic[appid] = DateTime.Now;
}
return ticketDic[appid];
}
}
}


免責聲明!

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



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