微信开发时调用jssdk,在安卓设备中成功调用;在ios设备中返回错误消息:config fail,无其他具体错误消息,且接口权限显示获取ok,无法调用
js代码如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
|
var app = {};app.appId="";app.jsApiTicket="";app.sign = "";app.nonceStr="";app.timeStamp="";app.func={};var logoUrl = "http://ysj.weilaila.com:8080/demo/img/baby_logo.jpg";//生成随机字符串app.func.createRandomStr=function(num){ var s = "0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"; var r = []; var x = s.split(""); for(var i = 0; i<num; i++){ var random = parseInt(Math.random()*62); r.push(x[random]); } return r.join("");};app.func.getUrl = function(){ return location.href.split("#")[0];}//得到js api 接口凭证app.func.getConfigInfo=function(){ $.ajax({ type:"POST", url:"user/getjsapisign.jhtml", data:{ url:app.func.getUrl(), nonceStr:app.func.createRandomStr() }, async:false, success:function(data){ if(data.status=="ok"){ app.jsApiTicket = data.jsApiTicket; app.appId=data.appId; app.sign=data.sign; app.nonceStr = data.nonceStr; app.timeStamp = data.timeStamp; app.func.wxconfig(); } else { window.location.reload(); } }, error:function(){ alert("网络出错,请检查你的网络"); window.location.reload(); } });};/*//生成时间戳app.func.createTimeStamp=function(){ return Date.parse(new Date())/1000;};*//*//生成签名app.func.createSign=function(obj){ var str=""; var param = ['jsapi_ticket','noncestr','timestamp','url']; param.sort(); for(var i = 0; i<param.length;i++){ str+=param[i]+"="+obj[param[i]]; if(i!=param.length-1){ str+="&" } } console.log(str); return CryptoJS.SHA1(str).toString();}*/app.func.wxconfig = function(){ wx.config({ debug:false, appId:app.appId, timestamp:app.timeStamp, nonceStr:app.nonceStr, signature:app.sign, jsApiList:[ 'onMenuShareTimeline', 'onMenuShareAppMessage', 'hideOptionMenu', 'showOptionMenu', 'hideMenuItems', 'showMenuItems', 'closeWindow' ]});wx.ready(function(){wx.checkJsApi({ jsApiList:['onMenuShareTimeline','onMenuShareAppMessage'], success:function(res){ if(!res.checkResult.onMenuShareAppMessage||!res.checkResult.onMenuShareTimeline){ alert('你的微信客户端不支持JSSDK,请升级你的客户端'); } }});//*********这里的这些值,可以写死。******************wx.onMenuShareTimeline({ title:'长得好看的人都来参加花式裹孩纸大赛了,赢取IPHONE6S,不服来战!',//分享标题 link:'https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxec524716a0216797&redirect_uri=http%3a%2f%2fysj.weilaila.com%3a8080%2fdemo%2findex.jhtml&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect',//分享链接 imgUrl:logoUrl,// type:'link',//type是music或者video,link success:function(){ //以下是给用户加积分的函数请求 addNum(); }});wx.onMenuShareAppMessage({ title:'长得好看的人都来参加花式裹孩纸大赛了,赢取IPHONE6S,不服来战!', desc:'据说只要眼疾手快,你就可以赢得大奖,走向人生巅峰',//分享描述 link:'https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxec524716a0216797&redirect_uri=http%3a%2f%2fysj.weilaila.com%3a8080%2fdemo%2findex.jhtml&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect', imgUrl:logoUrl, success:function(){ addNum(); }});function addNum(num){ var addscroe = 5; $.ajax({ type:"POST", data:{ score:addscroe, type:1 }, url:"user/addscore.jhtml", async:true, success:function(data){ alert("分享成功!"); if(data.error) window.location.href = "index/rank.jhtml?score=0"; else window.location.href = "index/rank.jhtml?score="+addscroe; }, error:function(){ alert('抱歉,网络出错,请重新分享'); } });}});}app.func.getConfigInfo(); |
请注意,如果你的页面启用了https,务必引入 https://res.wx.qq.com/open/js/jweixin-1.0.0.js ,否则将无法在iOS9.0以上系统中成功使用JSSDK
如需使用摇一摇周边功能,请引入 jweixin-1.1.0.js
备注:支持使用 AMD/CMD 标准模块加载方法加载
|
1
2
|
if(location.search) location.href=location.origin+location.pathname; |
如果你的连接上有其他的参数,需要对照参数名进行过滤
微信开发时调用jssdk,在安卓设备中成功调用;在ios设备中返回错误消息:config fail,无其他具体错误消息,且接口权限显示获取ok,无法调用的更多相关文章
- 夺命雷公狗---微信开发55----微信js-sdk接口开发(2)接口功能介绍之签名算法
我们JS-SDK里面其实有不少的接口 startRecord---录音 stopRecord---停止录音 playVoice---播放 pauseVoice---暂停播放 uploadImage-- ...
- 微信开发-PC调试-JS-SDK功能之分享功能调试
一般涉及和第三方的开发调试,都会比较麻烦些.不过,像微信这样的大公司呢,产品技术是过硬的,所以,基本上只要自己把文档看仔细了,弄好了,基本就没有问题了. 对于后端接口一类的调试,主要就是通过打印访问日 ...
- c#微信开发,使用JS-SDK自定义分享功能,分享朋友圈,分享给朋友等
如果一个后端开发掌握了微信开发,甚至有微信开发上线项目,这在换工作的时候 还是有竞争力的. 微信开发的资料很多,但是用asp.net c#进行微信开发好像比较少,或者资料不够完整. 使用JS-SDK自 ...
- 夺命雷公狗---微信开发54----微信js-sdk接口开发(1)之快速入门
js-sdk基本介绍 除去服务号的九大接口外,微信提供了JS-SDK接口,所谓JS-SDK接口也就是在网页中使用javascript来更改网页设置, (比如隐藏右上角的菜单)获取用户状态(比如地理位置 ...
- 夺命雷公狗---微信开发56----微信js-sdk接口开发(3)所有接口功能
按照上节课程里面的介绍,我们可以先将刚才在signatrue.php里获取到的信息填写进jssdk.htm模版文件里填写各个权限的参数 jssdk.htm代码如下: <!DOCTYPE html ...
- 微信开发时遇到的UrlConnection乱码的问题
昨天做一个微信的模板消息推送的功能,功能倒是很快写完了,我本地测试微信收到的推送消息是正常的,但是一部署到服务器后微信收到的推送消息就变成乱码了. 为了找到原因,做了很多测试,查了一下午百度,最后得出 ...
- 微信公众号使用vue,安卓端点击按钮404,ios访问正常问题
情景:微信公众号使用vue开发的单页面,在安卓端点击按钮访问显示404,ios访问正常问题,能正常显示. 解决:将微信公众号菜单按钮设置的路径中把WWW去掉后,安卓.ios都能正常访问. 问题路径ww ...
- iOS中UIKit——UIFont得到iOS设备上的系统字体
for (NSString *fontFamily in [UIFont familyNames]) { NSLog(@"字体家族是:%@",fontFamily); for(N ...
- (转)platform_driver_register,什么时候调用PROBE函数 注册后如何找到驱动匹配的设备
platform_driver_register,什么时候调用PROBE函数 注册后如何找到驱动匹配的设备 2011-10-24 19:47:07 分类: LINUX kernel_init中d ...
随机推荐
- 英语口语练习系列-C31-图书-谈论事物-白雪歌送武判官归京
book your favorite book a story in your childhood a character in film or TV 词汇 含义 备注 trend 趋势 indivi ...
- sql面试题-----行转列
tem数据表如下图 select Time as 日期, sum ( case end ) as 胜, sum ( case end ) as 负 from tem group by Time 执行结 ...
- CodeForce VKcup A
题目描述:例如A-B,B-C是好朋友,那么A-C一定是好朋友,给一些点,和一些描述,观察是否成立 题目链接:点我 一个互相认识的团体,一定是每个点都和其他点相连的,那么边数为n(n-1)/2,把得到的 ...
- H5微信单页读书日活动
1. 页面方面 (1)单页面应用,使用jquery 绑定click事件来控制页面更换显示 (2)ajax请求获取图片数据,和海报名人名言数据 2.微信分享 (1)配置签名,后台导入微信第三方库配置签名 ...
- Java 动态代理 Demo
相比于静态代理,动态代理避免了开发者编写各个繁锁的静态代理类,只需指定一组接口及目标类对象就能动态地获取代理对象. 使用动态代理的六大步骤: 1 通过实现InvocationHandler接口来自定义 ...
- mac 本地跨域
完全退出chrome后终端下输入以下命令: chrome49以前版本 open -a "Google Chrome" --args --disable-web-security c ...
- Idea-每次修改JS文件都需要重启Idea才能生效解决方法
最近开始使用Idea,有些地方的确比eclipse方便.但是我发现工程每次修改JS或者是JSP页面后,并没有生效,每次修改都需要重启一次Tomcat这样的确不方便.我想Idea肯定有设置的方法,不可能 ...
- list utilities监视数据库前滚操作
您可以使用 db2pd 或 LIST UTILITIES 命令来监视数据库前滚操作的进度. 过程 发出 LIST UTILITIES 命令并指定 SHOW DETAIL 参数 db2 LIST UTI ...
- jquery 在线视频
1. jquery 网址 自学视频 http://edu.51cto.com/center/course/lesson/index?id=19292
- django之Ajax续
接上篇随笔.继续介绍ajax的使用. 上篇友情连接:http://www.cnblogs.com/liluning/p/7831169.html 本篇导航: Ajax响应参数 csrf 跨站请求伪造 ...