根据微信官方demo融合入项目,在测试过程中遇到的问题:(以域名:https://www.abc.com 为例)
假设当前打开页面的链接为:https://www.abc.com/123
签名错误
前提: 测试环境配置了https
问题: 启动微信分享,发现签名错误
解决: jssdk.php文件中,getSignPackage方法的$protocol 值得到的是http, 所以暂时把后面强制该值设为https
原因: 代码16行, https环境判断失效,导致17行获取的url地址和当前页面打开的url不一致,即代码所在的页面的url地址一定要与生成签名里的url一模一样,所以签名错误分享错误,分享出去,没有使用自定义的title、描述和自定义分享的url
前提:需要分享的url假设为:https://www.bbc.com/3344
问题:签名正确,开发者工具调试分享没有问题,手机客户端分享时,没有采用自定义的分享参数
解决:把https://www.bbc.com/3344 改为 https://www.abc.com/3344 即可
原因:2017/03/29号微信自定义接口的修改,即自定义分享的链接 必须与 公众号JS安全域名一致, 官方链接:验证
为规范自定义分享链接功能在网页上的使用,自2017年4月25日起,JSSDK“分享到朋友圈”及“发送给朋友”接口,自定义的分享链接,其域名或路径必须与当前页面对应的公众号JS安全域名一致,否则将调用失败。
例如,当前页面是 http://www.abc.com/123,其公众号对应的JS安全域名为 www.abc.com 以及 www.xyz.com,则分享自定义链接 http://www.abc.com/456 可以成功,分享 http://www.xyz.com/123 或 http://www.def.com/123 均将失败。
对于未接入微信JSSDK或已接入但JSSDK调用失败的网页,被用户分享时,分享卡片将统一使用默认缩略图和标题简介,不允许自定义。