刚刚 微信 JS SDK 分享给朋友、分享到朋友圈 的 API 失效了,各位前端有遇到吗?

2019-04-19 18:34:21 +08:00
 sdjl
微信 JS SDK 的 wx.onMenuShareAppMessage 接口(设置分享给朋友或分享到朋友圈),一直都可以正常使用的,今天下午发现好像失灵了。

检查过程序,确定不是自己代码的 bug,确定在微信 APP 内运行了这个 api 但没有效果,请问你们有遇到过此问题吗?

事件时间:2019 年 4 月 19 日下午
3072 次点击
所在节点    程序员
11 条回复
wispx
2019-04-19 18:53:23 +08:00
看官方文档,这个接口已经废弃了,前天我也发现了
sdjl
2019-04-19 18:55:46 +08:00
@wispx 废弃这个说法已经半年以上了,我也考虑了使用新的接口,新接口 wx.updateAppMessageShareData 也没有用。
green0511
2019-04-19 18:59:32 +08:00
看下是否绑定的微信公众号的认证过期了
sdjl
2019-04-19 19:03:33 +08:00
@green0511 认证没有过期。

业务域名、JS 接口安全域名 也是正确的,分享的域名已经添加到 JS 接口安全域名。
wispx
2019-04-19 19:31:56 +08:00
@sdjl 我换了之后可以了,开 debug 看看是什么错误
sdjl
2019-04-19 20:21:41 +08:00
@wispx 我试过,debug 信息一切正常,都是显示 XXXmessage:ok
sdjl
2019-04-19 21:19:20 +08:00
已经查出来了,是我自己的 bug,谢谢大家,正跪在地上改 bug。。。
pytth
2019-04-19 23:10:58 +08:00
原因比较多,常见的就是签名不对!我照着文档写的,步骤没问题,后来生成签名的 url 带了一些符号,导致签名不对。
sdjl
2019-04-19 23:48:04 +08:00
我的 bug 找到原因了,分享给大家

如果有以下代码:

data.link = 'old url'
wx.onMenuShareAppMessage(data)
data.link = 'new url'

那么 wx.onMenuShareAppMessage 实际上使用的是 new url,而不是 old url。

这是 JS 异步机制的坑,我也不是第一次踩了~
sdjl
2019-04-19 23:51:40 +08:00
@微信客户端程序员 wx.onMenuShareAppMessage 函数可否加一句 data = deepcopy(data),以免更多的人采坑?
mopig
2019-04-20 00:56:09 +08:00
@sdjl 自己 copy 不就行了,浅拷贝就行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/556856

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX