我正在开发一个小型的应用程序开发。我遇到了一种情况。我正在使用松弛对话框从用户获取数据以及用户输入数据时 然后单击“提交”按钮我收到一条警告消息。我不知道是什么 是它以及为什么它发出警报。怎么办?请注意我明白了 我的交互式组件脚本中的负载响应。并用200响应服务器。这是我的响应代码:
if($type == "dialog_submission")
{
http_response_code(200);
return json_encode(array(
'status' => 200,
'message' => 'ok'
));
$ch = curl_init("https://slack.com/api/chat.postMessage");
$dataSet = http_build_query([
"token" => $authToken,
"channel" => $data['channel']['name'],
"text" => "123",
]);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POSTFIELDS, $dataSet);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
}
答案 0 :(得分:1)
尝试类似:
if($type == "dialog_submission") {
return json_encode(array(
'status' => 200,
'message' => ''
));
}
答案 1 :(得分:0)
您需要向Slack对话框返回空响应,否则您将收到错误
我们在连接方面遇到了一些麻烦。再试一次?
所以你必须在某个地方有一个回显,它会向Slack对话框返回一些错误。你需要删除它们。就像最后的echo $result;
一样。
如果您的脚本有运行时错误,也会发生此错误,因为它会在test.php第101行中创建一个自动响应,例如"错误...."。要检查这一点,请确保已激活错误日志记录并检查日志文件中是否有任何错误。
通过将这些命令放在脚本的开头来激活错误记录:
ini_set("log_errors", 1);
ini_set("error_log", "php-errors.log");
然而,您可以将验证错误返回给Slack,但这些错误必须采用特定格式。有关详细信息,请参阅this documentation。