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; }
相关文章推荐
- JavaScript初学者应注意的七个细节
- 高性能JavaScript(您值得一看)
- js跳出多重循环及$.each跳出多重循环
- javascript 校验
- js addEventListener如何给触发,事件动态传参与添加/删除
- 【JS】DOM事件模型
- Javascript原型链和原型的一个误区
- javascript传递方法 和 传递带括号的方法区别
- js正则表达式替换空格
- isMobile 一个简单的JS库,用来检测移动设备
- 在不知道json格式的情况下如何使用cjson进行解析
- js json 实现方式
- Emberjs
- Emberjs 2
- js 数组操作
- json
- 4个好用的JS联动选择插件
- javascript获取ckeditor编辑器的值(实现代码)
- php正确解码javascript中通过escape编码后的字符
- javascript跨域解决方案