您的位置:首页 > Web前端 > JavaScript

wx jssdk

2015-05-29 09:06 561 查看
public static Dictionary<string,string> jsstr(string url)
{
//noncestr
string noncestr=jssdk.GenerateRandom(16);

//timestamp
TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
string timestamp = Convert.ToInt64(ts.TotalSeconds).ToString();

//jsapi_ticket 尝试本地读取
//{"ticket":"~~~","expires_in":1432785380}
//^^json格式

int i=0;
string path=System.Web.HttpContext.Current.Server.MapPath("~/App_Data/jsapi_ticket.txt");
read_jspai: string json=txtdata.txtread(path);
string jsapi_ticket=jssdk.rejson(json,"ticket");
string expires_in=jssdk.rejson(json,"expires_in");
//jsapi_ticket 是否超时
if(int.Parse(expires_in)<int.Parse(timestamp))
{
//只会调一次接口,避免重复
if(i==0)
{
//获取最新 jsapi_ticket_get  --AppID--AppSecret
string info=jssdk.jsapi_ticket_get("!!!!","@@@@");
if(info=="ok")
{
i=1;
goto read_jspai;
}

}
}
string signaturestr = "jsapi_ticket=" + jsapi_ticket + "&noncestr=" + noncestr + "×tamp=" + timestamp + "&url=" + url;
signaturestr=jssdk.SHA1(signaturestr);

Dictionary<string, string> mydic = new Dictionary<string, string>();
mydic.Add("appId","wx5b7c682cca621df2");
mydic.Add("timestamp",timestamp);
mydic.Add("nonceStr",noncestr);
mydic.Add("signature", signaturestr);

return mydic;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: