收藏
回答

微信小程序的接收消息和事件的回包,应该返回什么?

微信小程序的接收消息和事件的回包,返回success,是否可以?

还是说需要,返回这种回包?

{
    "Encrypt": "ELGduP2YcVatjqIS+eZbp80MNLoAUWvzzyJxgGzxZO/5sAvd070Bs6qrLARC9nVHm48Y4hyRbtzve1L32tmxSQ==",
    "MsgSignature": "1b9339964ed2e271e7c7b6ff2b0ef902fc94dea1",
    "TimeStamp": 1713424427,
    "Nonce": "415670741"
}


回答关注问题邀请回答
收藏

2 个回答

  • 微信开发生态产品经理-zirali
    微信开发生态产品经理-zirali
    04-27

    微信小程序消息推送后,开发者服务器应给予回应:

    如无需特别响应或无法及时回应,则可返回:空字符串或纯文本“SUCCESS”

    微信服务器收到回应后即确认开发者已经收到,不再进行重试。

    如推送的消息为「客服消息」或其他可被动响应的消息时,则根据要响应消息的类型返回对应结构内容,具体可参考文档:https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Passive_user_reply_message.html

    返回时,可根据mp后台约定的消息模式,返回对应的信息:

    一、明文模式

    按照文档对应的格式回包要求,返回对应内容,格式必须与后台配置的数据格式一致(JSON/XML二选一)

    比如文本消息XML,则为:

    <xml>
      <ToUserName><![CDATA[toUser]]></ToUserName>
      <FromUserName><![CDATA[fromUser]]></FromUserName>
      <CreateTime>12345678</CreateTime>
      <MsgType><![CDATA[text]]></MsgType>
      <Content><![CDATA[你好]]></Content>
    </xml>
    


    二、安全模式

    返回包含加密数据的结构化响应:(对返回的特定类型内容做加密)

    {
        "Encrypt": "加密数据(Base64编码)",
        "MsgSignature": "消息签名",
        "TimeStamp": "UNIX时间戳",
        "Nonce": "随机字符串"
    }
    
    1. 格式必须与后台配置的数据格式一致(JSON/XML二选一)


    三、核心判断标准

    1. 加密模式由小程序后台的【消息加解密方式】配置决定:
    2.     选择"安全模式"时必须加密回包
    3.     选择"明文模式"时禁止加密回包
    4.     "兼容模式"需同时支持两种回包(根据请求参数自动切换)

    重要注意事项

    1. 安全模式签名计算必须包含四要素:
    2. 所有回包须在5秒内完成响应
    3. 加密回包的Content-Type需设置为application/json或text/xml(与配置格式匹配)
    4.     Token
    5.     TimeStamp
    6.     Nonce
    7.     Encrypt字段值

    参考文档:消息推送技术文档

    04-27
    有用
    回复 2
  • 智能回答 智能回答 本次回答由AI生成
    04-27
    有用 1
登录 后发表内容