微信JS-SDK分享的坑

以下内容均为微信内置浏览器访问的场景。本文只阐述微信分享的URL的坑,不阐述具体的代码实现和JS-SDK的具体使用。

大家有没有发现,某些网站访问的路径与最终分享的路径不同!对,没错,就是不同。

微信JS-SDK分享的URL有三种情况:

a.访问路径与分享路径一致,这种情况相信大家做分享是没有问题的。

  访问URL:https://www.baidu.com/aa.html

  分享URL:https://www.baidu.com/aa.html

b.访问路径与分享路径同域名,但后面的页面或者参数不同。

  访问URL:https://www.baidu.com/aa.html

  分享URL:https://www.baidu.com/bb.html 或者 https://www.baidu.com/aa.html?comfrom=xxx

c.访问路径与分享路径域名不同,后面的页面和参数不同

  访问URL:https://www.baidu.com/aa.html

  分享URL:https://www.google.com/bb.html

最容易出现问题的是b和c两种场景,实际上微信是支持这两种场景的,微信的官方文档没有具体的描述,是多次采坑和多次尝试后发现,后面对比官方demo也是如此使用。

在此过程中发邮件至微信分享的邮箱,但过去3天了,没有任何回应。

具体的使用方法如下:

1.页面引入微信的sdk对应的js文件。

2.将当前页面的url进行加密 window.location.href.split('#')[0],得到四个参数,调用wx.config进行配置,如果最新版本微信不报错,则说明成功。

3.调用wx.ready方法,在里面进行微信分享的配置,注意此处配置的参数中的url可以不为当前url,官方描述必须为微信对应的JS安全域名,(此处没有测试非JS安全域名的情况)。

至此,可以实现微信分享访问的URL与分享后的URL不同的情况。

posted @ 2018-06-25 09:39  MyFirstHome  阅读(867)  评论(0编辑  收藏  举报