api链接地址:developer.work.weixin.qq.com/document/pa…
先说结论:imgUrl字段不能为空。
问题表现:企微侧边栏分享消息到当前会话,发送卡片链接时,部分PC发送不出去,手机企微可以,并且报错sendChatMessage:fail, invalid param。
第一反应是以为企微版本问题,后来去公司其他应用发现可以发送,但是比我的参数多了imgUrl和desc。开始怀疑是不是这两个参数的原因。
我打开企微开发者模式,在控制台直接使用命令(模拟数据),能成功发送。
window.wx.invoke('sendChatMessage', {
"news": {
"link": "https://www.baidu.com",
"title": "百度",
"desc": "百度",
"imgUrl": "https://www.baidu.com/img/flexible/logo/pc/result.png"
},
"msgtype": "news",
"appId": "**", // 后端生成,下同
"verifyAppId": "**",
"verifySignType": "**",
"verifyTimestamp": "**",
"verifyNonceStr": "**", "verifySignature": "**",
})
然后再输入命令,只去掉imgUrl
window.wx.invoke('sendChatMessage', {
"news": {
"link": "https://www.baidu.com",
"title": "百度",
"desc": "百度",
"imgUrl": ""
},
"msgtype": "news",
"appId": "**", // 后端生成,下同
"verifyAppId": "**",
"verifySignType": "**",
"verifyTimestamp": "**",
"verifyNonceStr": "**", "verifySignature": "**",
})
发送失败,但是官方文档里并没有提到imgUrl是必填的,社区里也只有一条问答,目前也没有修复。
所以如果碰到类似情况,要注意补上imgUrl。