收藏
回答

wx.requestSubscribeMessage用户触发订阅消息弹窗行为事件后端服务器收不回调?

appid:wxb89db0a3d285941f

已成功配置消息推送服务器地址

后端服务器调用(https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=ACCESS_TOKEN)这个接口是可以收到回调的

但是前端通过wx.requestSubscribeMessage唤起弹窗后,用户同意/拒绝的行为事件不会推送到后端服务器

难道wx.requestSubscribeMessage的事件推送地址不是我上面截图里面配置的服务器地址吗?

我参考的是这个文档,文档上的意思是可以推送的,文档地址:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/subscribe-message.html#%E8%AE%A2%E9%98%85%E6%B6%88%E6%81%AF%E8%AF%AD%E9%9F%B3%E6%8F%90%E9%86%92

后端接收回调接口只有一个,不区分请求方式(GET/POST都能接收),支持了验签和request body参数解密,通过花生壳把本地内网端口映射到了公网,接口应该没问题,因为上面说到后端调用推送订阅消息接口之后可以收到回调

所以现在的问题症结在上图中文档说的用户对弹窗的行为(允许或拒绝)会不会推送回调数据到后端服务器?如果推送是在哪里配置地址?是我姿势不对么。。。还请各位大佬不吝赐教!



问题已解决,能收到回调,说下过程吧

1,先用了消息推送调试工具,能正常接收,调试工具地址:https://developers.weixin.qq.com/apiExplorer?type=messagePush

2,更改消息推送服务器地址配置,上文提到为了方便调试我用花生壳映射出来一个公网端口,后来我把地址改成我们测试环境的公网地址了

3,让前端小伙伴帮忙用真机测试了一下,猜测大概率是因为这个

最后一次编辑于  08-28
回答关注问题邀请回答
收藏

2 个回答

  • showms
    showms
    08-27

    记得是会推送,接收到请求时把日志打印出来看下

    08-27
    有用
    回复 1
    • Zero
      Zero
      08-27
      您好,有日志,没有收到。。。
      08-27
      回复
  • 一笑皆春
    一笑皆春
    08-27

    前端跟后端是分开的,用户订阅了不会通知后端的,用户订阅一次,后端可以通过send发送一次

    08-27
    有用
    回复 4
    • Zero
      Zero
      08-27
      您好,但是文档里面有些会推送后端服务器的呀,是文档写错了么
      08-27
      回复
    • 一笑皆春
      一笑皆春
      08-27回复Zero
      在服务器打印下日志,看看微信的请求数据,因为是XML格式的,所以需要做下格式转换。推送格式如下
      {"ToUserName":"","FromUserName":"","CreateTime":"1709729279","MsgType":"event","Event":"subscribe_msg_popup_event","SubscribeMsgPopupEvent":{"List":[{"TemplateId":"","SubscribeStatusString":"reject","PopupScene":"0"},{"TemplateId":"-","SubscribeStatusString":"reject","PopupScene":"0"}]}}
      08-27
      回复
    • Zero
      Zero
      08-27回复一笑皆春
      您好,我在别的帖子里面看到这段话了,应该是可以接收到,我再找找文档看看,多谢您🙏
      08-27
      回复
    • 一笑皆春
      一笑皆春
      08-27回复Zero
      收不到估计就是配置的不对
      08-27
      回复
登录 后发表内容