当开发微信时需要做特定的页面做分享时,根据官方提供的jssdk.php文件创建的签名数据包调试时,大家碰到的最多的错误而且解决最麻烦的大概就是signature错误了,

分享时提示错误“{"errMsg":"config:invalid signature"}”

一般出现这个错误多半是签名获取失败,而造成签名获取失败的原因各种各种,余斗在开发的时候也遇到过这种情况,搜索了不少网上教程,解决了自己的问题。接下来,余斗将这些解决方法统一整理列出来,希望可以帮到大家:

1、APPID和APPSECRET填错

这个错误可以到官方的调试页面获取access_token看看是否是正确,点击获取获取access_token

根据返回的结果可以判断页面内的APPID和APPSECRET有没有出错,没有出错的话可以点击获取jsapi_ticket

利用前面拿到的access_token 采用http GET方式请求获得jsapi_ticket,如果出错的话会返回对应的说明。

点击进行确认签名算法校验

点击查看全局返回码说明

2、超过了每日的access_token获取上限

官方限定每日2000次请求,所以如果没有缓存access_token的话,还是比较容易过限的。

3、查看微信公共号状态是否不正常

比如验证过期了,被封禁了等。

4、确认config中nonceStr

js中驼峰标准大写S, timestamp与用以签名中的对应noncestr, timestamp一致。

5、确认url是页面完整的url

请在当前页面alert(location.href.split('#')[0])确认,包括'http(s)://'部分,以及'?'后面的GET参数部分,但不包括'#'hash后面的部分,这里在文章《静态页面实现微信分享带缩略图、标题和描述》最后已做说明,大家可以自行修改好。

6、配置curl是否使用ssl的带证书(https协议)访问开关

找到官方提供的jssdk.php,找到代码:

curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
  curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, true);

将true改为false,因为一般我们是没有安装证书的(https协议),所以将true改为false就好,反之,如果网站安装了证书,则将false改为true。

7、将网站所在服务器IP地址加入白名单

登录微信公众平台,依次点击设置->安全中心->IP白名单进行添加或修改

ps:微信开放平台、公众平台、商户平台区别

一.微信开放平台

主要面对移动应用/网站应用开发者,为其提供微信登录、分享、支付等相关权限和服务。

微信开放平台还提供了数据统计功能,用于开发者统计接入应用的登录、分享等数据情况。

接入步骤

已京东APP举例,比如京东APP需要使用微信登录、分享和微信支付功能,首先注册微信开发平台-开发者账号,并按照以下流程在微信开放平台创建京东APP:

审核通过后,即可获得以下的初级权限,如要获得更高如微信支付权限,需要再单独申请,具体微信支付权限申请步骤详见附件《移动应用-微信支付权限申请流程》

二.微信公众平台

微信公众平台用于管理、开放微信公众号(包括订阅号、服务号、企业号),简单的说就是微信公众号的后台运营、管理系统。

后台功能(以服务号介绍)

(1) 基础运营功能:公众号申请成功后即可获得群发功能、自动回复、自定义菜单、投票管理;

(2) 高级功能:微信公众平台还提供了以下高级的功能来丰富公众号,以下权限需要二次开发。

(3) 微信支付:提供公众号内微信支付能力,和移动应用一样也需要单独申请,流程和移动APP流程类似。

(4)管理:包括已关注用户管理、消息管理、素材管理

(5)推广:包括广告主(定向投放广告,精准推广自己的服务)和流量主(按月获取广告收入)

(6)统计:用户分析、图文分析、消息分析、接口分析(自定义菜单调用量)

三.商户平台

无论是申请 公众平台商户 还是 开放平台商户,申请成功后,都会拥有商户平台账号,可登陆商户平台进行操作。

商户平台主要就是做微信支付用的,如果APP或者公众号需要接入支付功能,那么就需要在公众平台申请公众平台商户,或者在开放平台申请开放平台商户。申请成功后会分配商户平台账号。

8、反向代理问题

如果以上查验绝没有解决问题,则查看下自己的服务器是否反向代理没有设置好,nginx配置反向代理代码:

proxy_set_header Host $http_host;

微信二次分享链接,出现config:invalid signature错误的解决方法相关推荐

  1. 微信分享链接出现config:invalid signature错误的解决方法

    当开发微信时需要做特定的页面做分享时,根据官方提供的jssdk.php文件创建的签名数据包调试时,大家碰到的最多的错误而且解决最麻烦的大概就是signature错误了,如下图: 分享时提示错误&quo ...

  2. 微信分享踩坑:config:invalid signature错误的解决方法

    微信分享踩坑:config:invalid signature错误的解决方法 一般出现这个错误多半是签名获取失败,而我根据我获取到的签名跟签名算法校验里面得到的签名是一样的,于是查找大量文档,核实可能 ...

  3. 微信二次分享签名错误php,微信二次分享报错invalid signature问题及解决方法

    基于微信公众号开发的h5页面(使用jssdk接口),由用户A分享给用户B,用户B再次分享这个页面时,不能成功分享.问题出在用户B收到的分享链接与用户A打开的链接不同 A用户的链接为 B用户收到的连接 ...

  4. invalid signature_php,微信开发JSSDK遇到的问题 config:invalid signature

    具体可以参考这个文档写的很详细. 那么问题来了,具体是什么问题导致了,不能正常获取文件接口呢?  哎,主要是token  和  jsapi_ticket 导致的, 写文件到了本地,那么我如果是多个号进 ...

  5. 使用以太坊geth客户端调用智能合约时报“Invalid Address“错误的解决方法

    需要事先定义defaultAccount变量对象 web3.eth.defaultAccount = web3.eth.accounts[0]

  6. 安卓微信二次分享不显示描述和图片

    问题描述 在做微信分享的时候有遇到过这样的问题,,第一次分享到微信,描述和图片都能正常显示,但是打开连接用微信自带的分享功能进行分享时,就会出现以下情况:描述变链接.图片不显示.标题变更. 导致的原因 ...

  7. 微信扫一扫错误提示realauthurl:xxx errmsg config:invalid signature

    使用微信测试号 实现微信扫一扫功能时 出现的问题 1. 环境: springboot + js +微信测试号 + 花生壳穿透 2. 问题 ios系统 调用微信扫一扫时候出现 realauthurl:x ...

  8. 微信jssdk ios下报config invalid signature签名错误问题 Android正常

    微信jssdk ios下报config invalid signature签名错误问题 Android正常 最近Taro项目出于安全考虑,所有上传图片的地方都要改为,先把图片上传到微信服务器,然后根据 ...

  9. 微信二次分享(标题、摘要、缩略图)

    微信二次分享 目的 要求 准备工作 代码逻辑 结束 总结 目的 公司需要实现一个手机在微信分享的网页带标题.摘要和缩略图的功能,查看了微信开发文档,是一个二次分享比较简单的功能,下面开始写代码吧 要求 ...

最新文章

  1. python ggplot为什么不能取代matplotlib_Matplotlib vs ggplot2
  2. 只需一行代码,你的纯文本秒变 Markdown
  3. Oracle对数据的导出和导入,建立用户,删除用户以及其下的所有表
  4. 面部识别辅助监控系统 人工智能为城市安全保驾护航
  5. redis:RDM连接阿里云redis服务器
  6. linux 中解析命令行参数 (getopt_long用法)
  7. HTML 元素和属性--备份
  8. gcn语义分割_语义分割该如何走下去?
  9. python列表输出字符串,如何在python中输出utf-8字符串列表?
  10. CISCO路由AAA的Easy ×××
  11. 360安全卫士管理开机启动项的方法
  12. 如何让语音芯片与功放芯片之间更好的配合,使得产品音效更好
  13. matlab2020面板介绍
  14. Python:货币转换(写一个程序进行人民币和美元货币之间的币值转换)
  15. ansible常见模块
  16. 【协议森林】IPv6过渡技术之隧道和翻译技术
  17. 接入Paypal 实现跨境支付 - springboot实战电商项目mall4j
  18. java项目-第91期基于ssm的蛋糕商城系统
  19. Mac Safari 12.0 升级后无限闪退,提示不支持扩展
  20. php获得当前时间差,PHP获取当前时间差8小时的问题

热门文章

  1. 一句话木马的工作原理
  2. pycharm使用ssh连接服务器(ubuntu)跑代码报错:“sudo+ssh: ……bash: line 0: cd: xxx/code: No such file or directory”
  3. 2018 Android开发面试经历
  4. Java 对象的构造和初始化
  5. Java-File文件操作
  6. /etc/fstab文件详解
  7. 汽车功能安全(一)~笔记
  8. 你们要的Java学习路线图,来喽
  9. Docker常用容器命令
  10. JS padStart()方法和padEnd()方法(ES6新增方法)