私はPHPを利用したSlackとFilemakerの統合に取り組んでいます。私は、コードがFileMakerでjsonリクエストに基づいてレコードを作成するのに成功しており、チャレンジキーをSlackに返すことも問題ありません。スラックイベントPHPレスポンス
ただし、チャレンジを戻している間、Slackに200 OKというヘッダー応答を渡すのに問題があります。それは、どちらか一方でなければならないように見えます。
私はHTTPヘッダーをコード内の別の領域に移動しようとしましたが、これまでのところ成功しませんでした。ここで
は、現在のコードです:
<?php
$data = json_decode(file_get_contents('php://input'), true);
if (!isset($data["challenge"])) {
$body = $_SERVER['HTTP_X_SLACK_RETRY_REASON'];
require_once ('Filemaker.php');
//$body = file_get_contents('php://input');
$fm = new Filemaker();
$fm->setProperty('database', '');
$fm->setProperty('username', '');
$fm->setProperty('password', '');
$command = $fm->newPerformScriptCommand('PHP_RESPONSE', 'script', $body);
$result = $command->execute();
}
else {
header("Content-Type: text/plain");
header('X-PHP-Response-Code: 200', true, 200);
echo $data["challenge"];
}
?>
も200 OKのHTTPヘッダーを戻しながらコードは、スラックのためのチャレンジコードを返すようにするために、私は期待する結果があります。
現在、私はSlackから "http_error"というエラーが発生していることがわかります。これは、ヘッダーが正常に返されていないという問題を引き起こしています。
何が間違っているかについてのアイデアや、進めるべき正しい方向への提案は非常に高く評価されます。
コードの変更は、それ自体で助けにはならなかったが、それは私の最終的な解決に役立ったかもしれないので、私は規則を採用しました。 – MBermejo