博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信JSSDK分享,解决config:invalid signature问题
阅读量:6643 次
发布时间:2019-06-25

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

微信JSSDK分享可以实现自己的网页在微信自定义图标,标题,还有描述,还可以分享到朋友圈,分享到微信群,分享给朋友等操作。

上图就是,左侧是分享到朋友圈,右侧是分享到微信群。

很多开发者下载官方的demo进行开发,最后debug的时候,显示的是config:invalid signature ,这个原因其实很有可能是签名不一致。

我们需要保持签名一致,才能完整注入这个权限的。

一般,签名不一致的是因为access_token生成的时候,获取jsapi_ticket的时候有问题造成的,我一开始弄了好久都没搞对,后来一个个尝试。

我先尝试生成的一个jsapi_ticket,写死在页面,发现没问题,然后再尝试获取access_token写死在页面,也没问题,但是直接在页面上生成access_token再调用就不行。

我就另外写了一个access.php进行生成access_token,把access_token存入数据库,搞一个定时任务,每隔1小时生成一个新的access_token,因为access_token仅有2小时有效期,而且每天最多调用2000次,所以我觉得存数据库是比较好的。

然后在分享页面取数据库的access_token就行了。

下面是生成access_token的代码: access.php

access_token; //连接数据库$con = mysql_connect("数据库地址","数据库账号","数据库密码");mysql_select_db("数据库名", $con);mysql_query("INSERT INTO access_token (access_token) VALUES ('$token')");mysql_close($con);?>复制代码

下面是分享页面代码: index.php

'ADDPID修改为您的',      "nonceStr"  => $nonceStr,      "timestamp" => $timestamp,      "url"       => $url,      "signature" => $signature    );    return $signPackage;   }  $signPackage = getSignPackage();?>
微信分享DEMOtest复制代码

大概就这样就可以config:ok了

当然,开发过程中需要设置IP白名单,JS接口安全域名这些我就不多说了。

作者:TANKING

2018-10-15

转载于:https://juejin.im/post/5bd1c04bf265da0ae3443903

你可能感兴趣的文章
okhttp3使用
查看>>
Android adb常见问题整理
查看>>
android跑马灯效果
查看>>
ubuntu下pip出错的临时解决办法
查看>>
MongoDB 用户权限管理手册
查看>>
妙味课堂cctv移动端项目
查看>>
谈谈CAS的常规用法
查看>>
Struts1 Action 属性详解
查看>>
mantis更改备忘
查看>>
Html5时钟的实现
查看>>
Android应用如何实现换肤功能
查看>>
Linux面试题集锦,测测你的水平(答案)二
查看>>
读懂正则表达式就这么简单
查看>>
python模块介绍-gearman:程序排程 概述
查看>>
利用autobench测试web服务器极限并发数
查看>>
Zabbix监控系统部署
查看>>
centos用光盘做本地源
查看>>
linux 的文件归档和压缩
查看>>
内网通过映射后的公网IP访问内网服务测试--ASA8.0 hairpin NAT测试
查看>>
2018年的AI/ML惊喜及预测19年的走势(二)
查看>>