博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于微信网页调用js-sdk相关接口注意事项目(一级域名与二级域名互相干扰!!!)...
阅读量:6914 次
发布时间:2019-06-27

本文共 835 字,大约阅读时间需要 2 分钟。

      不知道有没有网友遇到过同一个web应用用不同的域名(一级或二级域名)在两个公众号中调用JSSDK相关接口实现功能,

这种做法本来没有问题,问题在于用二级域名(同属一级域名下的二级域名)绑定另一个web应用的ip在上面两个公众号中的其中一个做测试时,

问题就出现了。

   我们先理一下jssdk调用的流程,

1、利用appId与appSecret得到access_token;

2、利用access_token得到jsapi_ticket临时票据;

3、通过算法获得随机字符串$nonceStr

4、利用jsapi_ticket=$jsapiTicket    &noncestr=$nonceStr    &timestamp=$timestamp    &url=$url获取$signature签名;

5、jsapi_ticket、url、$timestamp、$nonceStr、$signature、appId共同组合成微信配置参数。

6、配置成功后可调用相关接口。

 

重点在于配置是否成功,

access_token与jsapi_ticket都时效性两个小时,使用时必须缓存,以免触发频率限制;

问题回来上面说的同一个众号中有两个应用在调用js接口,一个是生产的,已经上线的,一个测试的,专用测试用,两个应用都是主域名下的二级域名,

这时会出现接口调用冲突。!!!!

原因是如果安全域设置了一级域名,那它下面的二级域名同样可以调用js接口,也就是说一级域名与其下面的两级以下的域名统一对应一个公众号,

它们请求生成的access_token与jsapi_ticket具有唯一性,当一个域名请求后,另一个域名下调用时所使用的缓存access_token与jsapi_ticket就会失效,

从而调用失败。

 

简单来说, 一个公众号只能对应一个域名(包括其下面的二级以上域名),无论多少级域名调用接口,它们access_token与jsapi_ticket 是唯一的;

这真是折磨死人

转载地址:http://pbacl.baihongyu.com/

你可能感兴趣的文章
如何在 Ubuntu 以及 Debian 中安装 DHCP 服务器
查看>>
《图数据库》——2.1 关系型数据库缺少联系
查看>>
16万Facebook数据告诉你,单身狗更爱养猫
查看>>
《JUnit实战(第2版)》—— 1.6 使用JUnit测试
查看>>
C++程序设计:原理与实践(进阶篇)17.6 Shape
查看>>
《JavaScript设计模式》——1.3 用对象收编变量
查看>>
《HTML5+CSS3网页设计入门必读》——1.6 再次联手
查看>>
永远不要在Linux执行的10个最危险的命令
查看>>
科普丨【计算机视觉】OpenCV中直方图处理函数简述
查看>>
《Ansible权威指南》一1.6 Ansible应用场景
查看>>
HTML超链接
查看>>
wampserver如何配置。
查看>>
行为型模式:模板方法
查看>>
Linux命令
查看>>
5、Flutter Widget - AbsorbPointer;
查看>>
区块链:定义未来金融与经济新格局
查看>>
小册笔记
查看>>
mongoDB高级查询这一篇就够了
查看>>
js节流和防抖
查看>>
MySQL学习笔记之三排序和过滤
查看>>