public WeChat_Message(string toUserName, string fromUserName, string msgType) { this.ToUserName = toUserName; this.FromUserName = fromUserName; this.MsgType = msgType; this.CreateTime = CommonUtilities.generateTimeStamp(); }
public string WxRedPackCreate(string openid, int amount) { Random random = new Random(); string mch_billno = "WXREDPACK" + CommonUtilities.generateTimeStamp() + random.Next(1000, 9999); var result = WxRedPackCreate(openid, amount, mch_billno, "红包发放", "寿全斋", "红包发放", "恭喜获得红包"); return(result); }
/// <summary> /// 调用微信JsApiTickets接口,并保存到数据库 /// </summary> private void generateJsApiTicket() { string access_token = getAccessToken(); string urlstring = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=" + access_token + "&type=jsapi"; Uri url = new Uri(urlstring); HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); string jsonresult = new StreamReader(response.GetResponseStream()).ReadToEnd(); JavaScriptSerializer serializer = new JavaScriptSerializer(); Wx_JsApiTicket jat = serializer.Deserialize <Wx_JsApiTicket>(jsonresult); setWeChatConfigValue(JSAPI_TICKET, jat.ticket); long jsApiTicketexpires = CommonUtilities.generateTimeStamp() + jat.expires_in; setWeChatConfigValue(JSAPI_TICKET_TIMESTAMP, jsApiTicketexpires.ToString()); }
/// <summary> /// 调用微信AccessToken接口,并保存当前AccessToken到数据库 /// </summary> private void generateAccessToken() { string appId = getWeChatConfigValue(APP_ID); string appSecret = getWeChatConfigValue(APP_SECRET); string urlstring = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appId + "&secret=" + appSecret; Uri url = new Uri(urlstring); HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); JavaScriptSerializer serializer = new JavaScriptSerializer(); string jsonresult = new StreamReader(response.GetResponseStream()).ReadToEnd(); Wx_AccessToken token = serializer.Deserialize <Wx_AccessToken>(jsonresult); setWeChatConfigValue(ACCESS_TOKEN, token.access_token); long accesstokenexpires = CommonUtilities.generateTimeStamp() + token.expires_in; setWeChatConfigValue(ACCESS_TOKTEN_TIMESTAMP, accesstokenexpires.ToString()); }
/// <summary> /// 获取AccessToken值并判断是否需要重新获取 /// </summary> /// <returns>返回AccessToken的值</returns> public string getAccessToken() { string accessToken = getWeChatConfigValue(ACCESS_TOKEN); string accessTokenExpires = getWeChatConfigValue(ACCESS_TOKTEN_TIMESTAMP); if (accessToken == "" || accessTokenExpires == "") { generateAccessToken(); return(getWeChatConfigValue(ACCESS_TOKEN)); } else if (CommonUtilities.generateTimeStamp() + 200 > Convert.ToInt64(accessTokenExpires)) { generateAccessToken(); return(getWeChatConfigValue(ACCESS_TOKEN)); } else { return(accessToken); } }
/// <summary> /// 获取JsApiTicket值并判断是否需要重新获取 /// </summary> /// <returns>返回JsApiTicket的值</returns> public string getJsApiTicket() { string jsApiTicket = getWeChatConfigValue(JSAPI_TICKET); string jsApiTicketExpires = getWeChatConfigValue(JSAPI_TICKET_TIMESTAMP); // 判断是否为空值 if (jsApiTicket == "" || jsApiTicketExpires == "") { generateJsApiTicket(); return(getWeChatConfigValue(JSAPI_TICKET)); } else if (CommonUtilities.generateTimeStamp() + 200 > Convert.ToInt64(jsApiTicketExpires)) { // 判断是否超时(预留200秒) generateJsApiTicket(); return(getWeChatConfigValue(JSAPI_TICKET)); } else { return(jsApiTicket); } }