微信小程序 templateMessage.send推送消息 formId問題

微信小程序推送消息,基本參數爲接受用戶openId, 消息模板id, formId表單提交id。

對於formId來講,微信小程序只允許用戶有提交表單後,纔可以對用戶推送消息。

表單屬性通過report-submit=true設置,將會返回表單的id,微信文檔上說要保存該id,方便後續推送操作使用。

但是需要注意,此時返回的formId還不能立即使用(辣雞,開發者工具也辣雞,🤣吐槽好爽),也就是說不能再catchSubmit的事件裏使用該formId作爲推送參數formId(可以通過report-submit-timeout參數來檢測formId是否有效,說是網絡不好情況下會無效,但是發現很多情況下都返回requestFormId:fail timeout無效沒法使用). 所以此時如果要推送消息只能使用以前保存的formId並且每個formId只能用一次.

 

cloud.openapi.templateMessage.send({
    touser: toOpenId[0],
    templateId: template,
    formId: formId, //以前提交過表單的formId,不能直接使用catchSubmit中返回的那個
    page: 'pages/detail/detail?id=' + event.blogId,
    data: {
      keyword1: {
        value: event.nickName
      },
      keyword2: {
        value: event.message
      },
      keyword3: {
        value: new Date().toFormat("YYYY-MM-DD HH24:MI:SS")
      }
    },
  })

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章