IOS微信分享问题(h5页面),签名报错invalid signature

发布于 2022-09-11 19:57:41 字数 98 浏览 15 评论 0

网上方法差不多都看了,有个解决方法:window.location.href;确实有效,但是必须进入页面后再次刷新页面才能签名成功;
用时间戳也不能解决刷新问题,有大佬遇到过没

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

贪了杯 2022-09-18 19:57:41

在mian.js里面全局路由守卫后置钩子afterEach,主动修改url

window.router=router;
router.afterEach(to => {
  const u = navigator.userAgent.toLowerCase();
  if (
    u.indexOf("like mac os x") < 0 ||
    u.match(/MicroMessenger/i) != "micromessenger"
  )
    return;
  if (to.path !== global.location.pathname) {
    location.assign(to.fullPath);
  }
});
寄居人 2022-09-18 19:57:41

在ios下去修改 url 是没用的, 这个问题应该也只在单页应用下会出现。 我的做法是去到需要使用 jssdk 的页面我都是 window.location.href 跳过去的。 这样你在签名的时候 使用 window.location.href 就能签名成功了。 关键是你要使用 第一次进入页面是的url去签。 然后我就在 sessionStorage里面保存了一个变量, 看看是否 location.href这样去跳转过, 如果跳转过就用 router去跳, 没有就 location.href。 特地去翻了之前写的代码, 很久之前了写的乱记忆也乱, 大概思路是这样 希望能帮到你

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文