微信 js sdk 签名错误

2015-01-27 13:53:09 +08:00
 makuta

获取的signature在 http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign 做了验证通过 但是通过微信访问的时候 老报 invalid signature

我的服务端是nodejs

var access_token = function() {
return function(done) {
var token_url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' + appId + '&secret=' + appSecret
var self = this;
request(token_url, function(error, response, body) {
if (!error && response.statusCode == 200) {
logger.info('access_token');
token = JSON.parse(body).access_token;
}
done();
})
}
}

var get_jsapi_ticket = function() {
return function(done) {
var jsapi_ticket_url = 'https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=' + token + '&type=jsapi';
request(jsapi_ticket_url, function(error, response, body) {
if (!error && response.statusCode == 200) {
logger.info('get_jsapi_ticket');
ticket = JSON.parse(body).ticket;
done();
}
})
}
}

求帮助谢谢~~~~~

11274 次点击
所在节点    Node.js
25 条回复
nasa
2015-02-08 00:05:25 +08:00
我来告诉你们为什么吧,我是被腾讯坑惨了。 文档中的这个参数 noncestr s是小写的,实际上你要nonceStr 大写S才行。 哎 这个问题害的我们年会都没过好。
henzil
2015-02-13 09:46:34 +08:00
@makuta var config = sign(ticket, 'http://example.com')每个页面都是一个url,都需要获取sign。这个地方传的url是你当前的页面的url。
lujiajing1126
2015-02-15 20:58:15 +08:00
你是不是url传错了啊。。。官方推荐用location.href.split('#')[0]
makuta
2015-02-15 21:36:28 +08:00
@lujiajing1126 恩 是的 我前几天发现 就是这个问题
xiaoguidan
2015-05-30 18:58:01 +08:00
楼主解决了吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/165833

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX