概要
自作のSlackアプリの自作のスラッシュコマンドから送られるPOSTリクエストのヘッダの内容を確認する方法を簡単にまとめる。
前提
- 管理者権限を持っているSlackワークスペースがあること
- 自作のSlackアプリがあり、下記の条件を満たした設定になっていること
- 自作のスラッシュコマンド
/lambda_trigger
が設定されていること - スコープが「chat:write」のBot User OAuth Tokenがあること
- 自作のSlackアプリが任意のSlackワークスペースのgeneralチャンネルに入っていること
- generalチャンネルのチャンネルIDを知っていること
- 自作のスラッシュコマンド
- ローカルPCでserverless frameworkが動く状態になっていること
※筆者は参考文献先を参考に対応済み
方法
-
下記の内容を参考にserverlessのプロジェクトを新規作成
-
serverlessのhandler.jsを下記の様に記載
handler.jsexports.hello = async (event) => { console.log("Headers:", event.headers); console.log("Body:", event.body); return { statusCode: 200, body: JSON.stringify({ message: "処理終わり〜", }), }; };
-
serverless.ymlのhttpApiのmethodがpostになっていることを確認し
$ serverless deploy
を実行 -
表示されたエンドポイントURLをコピー
-
https://api.slack.com/appsにアクセスし、サイドバーの「Slash Commands」で
/lambda_trigger
コマンドのリクエスト送信URLに「表示されたエンドポイントURLをコピー」を貼り付け -
Slackのgeneralチャンネルで
/lambda_trigger
を実行 -
当該のAWSにブラウザでログインし、当該のlambda関数のログを確認
-
下記の様にヘッダ情報がでていたら完了
参考文献