SlackBot:Dialog 不是从 App home 调用的

SlackBot: Dialog is not invoked from App home

使用按钮从 Slack 新应用主页调用对话框时出错。使用 AWS lambda 和 NodeJS。 Link 已关注:https://api.slack.com/tutorials/app-home-with-modal

示例 API 调用:

POST https://slack.com/api/views.open

Body:

{"view": "{'type':'modal','title':{'type':'plain_text','text':'Request leave','emoji':true},'submit':{'type':'plain_text','text':'Submit','emoji':true},'close':{'type':'plain_text','text':'Cancel','emoji':true},'blocks':[{'type':'divider'},{'type':'input','element':{'type':'datepicker','placeholder':{'type':'plain_text','text':'Select a date','emoji':true}},'label':{'type':'plain_text','text':'Start date','emoji':true}},{'type':'input','optional':true,'element':{'type':'datepicker','placeholder':{'type':'plain_text','text':'Select a date','emoji':true}},'label':{'type':'plain_text','text':'End date','emoji':true}},{'type':'input','label':{'type':'plain_text','text':'Reason','emoji':true},'element':{'type':'plain_text_input','multiline':true},'optional':true}]}",
  "trigger_id": "9%%%%00d5bb3e5"
}

Headers:

Content-Type => application/json; charset=iso-8859-1
Authorization => Bearer  xoxb-94*******

错误:

{"ok":false,"error":"dispatch_failed"} 在浏览器网络选项卡中

更新:http_service_error 当我将 slash commanddialog.open / views.open

一起使用时
const web = new WebClient(process.env.BOT_TOKEN);
(async () => {
    await web.views.open({
        trigger_id: body.trigger_id,
        view: {<my block>},
    });
})();

这成功了!