微信 H5页面自定义分享link不起作用

微信 H5页面自定义分享link不起作用

最近在做这么一个功能:

H5页面在微信内打开并通过设置微信自定义分享来分享出指定的标题、图片、link

但是却遇到了问题,分享指定的link没起作用,正常通过链接进入H5首页,然后一直操作至流程最后,此时分享流程最后的页面,预期是希望分享首页链接,而不是当前页面的链接

按照微信开放文档上

wx.config({
  debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
  appId: appId, // 必填,公众号的唯一标识
  timestamp: timestamp, // 必填,生成签名的时间戳
  nonceStr: nonceStr, // 必填,生成签名的随机串
  signature: signature,// 必填,签名
  jsApiList: jsApiList// 必填,需要使用的JS接口列表
});
wx.ready(function () {   //需在用户可能点击分享按钮前就先调用
  wx.updateAppMessageShareData({ 
    title:title, // 分享标题
    desc: desc, // 分享描述
    link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
    imgUrl: imgUrl, // 分享图标
    success: function () {
      // 设置成功
      alert(link)
    }
  })
});

在ios手机上分享,指定的link未生效。打开分享出去的链接,跳转的是分享的当前页,而不是指定的url页面

alert(link) // 弹出的是我指定的link
在微信开发者工具上测试,打印出配置的自定义分享link也没错,但是打开分享的链接跳转的不是首页而是分享的当前页

后续做了如下修改:

link=link + ‘?t=’ + timestamp // 给指定link拼接时间戳

至此ios手机微信分享h5页面,打开分享链接成功跳转至首页

由于我的手机是ios,我以为到此,微信分享h5功能已经完成,但是在同事的安卓手机上,分享出的title,img以及link均不是自定义的内容,又做了以下修改

将 updateAppMessageShareData =》 onMenuShareAppMessage
微信开放文档上 推荐使用新的分享接口 updateAppMessageShareData,而onMenuShareAppMessage标记即将废弃,经过测试,还是旧接口 onMenuShareAppMessage在安卓机上起作用

即将代码改为:

wx.onMenuShareAppMessage({
  title:title, // 分享标题
  desc: desc, // 分享描述
  link: link + '?t=' + timestamp, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  imgUrl: imgUrl, // 分享图标
  type: 'link', // 分享类型,music、video或link,不填默认为link
  dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
  success: function () {
    // 用户点击了分享后执行的回调函数
  }
});

安卓微信分享好了,ios也没有影响

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值