本文主要介绍网页微信二次分享中楼主踩过的坑,希望对大家有所帮助,
之前写过的相关微信分享的文字这里指一下路:
微信分享 使用weixin js sdk 兼容 旧版本
【微信分享】 微信分享集成 使用weixin js sdk 兼容 旧版本 2
【cordova ionic2 微信分享】使用 cordova-plugin-wechat 做微信分享的注意点
微信官方文档指路:
微信JS-SDK说明文档
坑1:
公众号没有按时续费,
如果没有按时给公众号缴费,那么JS-SDK将无法正常工作,如果使用了JS-SDK中,即使是之前Debug打开时都报OK的,只要一旦公众号失效(没有缴费),Debug也会直接报错说无法使用
坑2:
公众号中对应位置的“JS接口安全域名”配置不正确
JS接口安全域名一般配置到一级域名即可,
还有另外一个业务域名不影响JS-SDK的调用,但是不配置业务域名,可能会造成分享到朋友圈打开时,微信给多包了一层丑丑的UI,或者在有输入框的时候顶部会弹安全提示
接着坑1造成的影响,如果之前都JS-SDK的分享都正常工作,而因为没有按时续费造成的公众号失效,那么当再次付费后,之前配置的JS接口安全域名和业务域名都需要重新配置
坑3:
确保没有踩坑1和坑2情况下,可能发生的JS-SDK的Debug报错:Sample中自动检测的Http和Https的坑,
如果你看了官方提供的Sample中的jssdk.php(楼主用php,Sample中的其它没有研究),
那么
// 注意 URL 一定要动态获取,不能 hardcode.
$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
这个说不要HardCode到还不如HardCode,如果你的域名用了https的证书,并且用了强制跳转or服务器集群策略(将https的请求分发给内部多台服务器),php这里拿到的protocol是不正确的,将会拿到http,而实际地址上却是https
这个动态获取错误就会导致Debug报错,建议这里不HardCode话,可以在初始化时,和appid和appsecret一样从外部参数传入
坑4:
A分享给B时,Debug没报错,而分享的图片A和B都看不到,
可能原因1:A手速太快,还没等浏览器页面进入条走完就点了分享(进度条没走完,一般分享初始化也没完成),这个只能怪A手速太快,页面完全加载完成后再分享A和B应该就都能看到
可能原因2:图片路径错误,这个就是低级错误了
可能原因3:图片路径正确(在普通浏览器访问能访问得到),但是连接中存在特殊字符,比如|(ucloud的缩略图服务中带水印就会用到|符号),是在需要用这种连接地址的情况下,需要php(楼主就用的php,别的语言请自行测试)帮忙做一下跳转
坑5:(此坑不仅限于网页的二次分享,app分享到微信的链接也是同理)
A分享给B时,Debug没报错,分享的图片A自己能看到,B却不能看到,同样的图片作为朋友圈分享A和B却都能看到
恭喜你在分享文案中踩到了微信爸爸的敏感词
楼主碰到的不能碰的敏感词为“抢到了大红包”(在分享给朋友的描述中,desc那个字段,不知道title会怎样,楼主没有测试),“大红包”和“抢了大红包”的组合,目前在分享中能看到图片的
不太懂微信爸爸这个文案的敏感词为什么会影响分享的图片
关于坑5的更新:(2018-05-23)
微信爸爸出台明文规定,标题和描述不能写的太夸张,不然分享出去的链接中的标题、描述和图片都不按你设置的来(链接还是能正常工作,只是外部ui会变),具体请看
(以上新闻内容来源:泡面小镇公众号文章 点击左边蓝字可看链接内容)
坑6:
超过3个月未使用appsecret,系统已进行重新设置,
这时候需要去公众平台拿最新的appsecret,替换即可
https://blog.csdn.net/fjnjxr/article/details/78070348
这篇文章中说的是可以拿到appsecret,目前最新的政策是微信不再明文存储appsecret,所以需要去公众号自己重置并记好appsecret
新政策:
1 微信不再告知分享成功/失败(原成功和取消的回调会合并为一个)
相关政策链接:
https://mp.weixin.qq.com/cgi-bin/announce?action=getannouncement&announce_id=11526372695t90Dn&version=&lang=zh_CN
2 微信朋友圈外链禁止使用含有用户隐私数据的浮层
相关政策的链接:
https://mp.weixin.qq.com/s?__biz=MjM5NjM4MDAxMg==&mid=2655078183&idx=1&sn=29eb1516fc3044f8673bfb9eca4b8a58&pass_ticket=o%2BtPKbeTrk%2B6UlmBVW5377yDzy91C5a6322%2FTePg3aVaZbHOM0DarvAqxUGURFyZ
祝福大家都能顺利搞定微信分享