動機
先日M5STICKCを使ってLINE Beaconを試してみた際に、
Webhook先を今まで使ったことないGASにしてみたところ、
どこでハマってしまっているのかよくわからない状態になってしまった。
知らない機能同士をまとめてためしたのが原因なので、Webhook先は毎回固定にしておいた方がいいのかもしれない
作ってみたもの
ということで、作ってみたのが個人的にWebhook先として汎用的に使える環境。
環境は一番慣れ親しんだものとしてAWSのLambda(とAPI Gateway)とする。
Lambda関数の中身は以下で、POSTで受けてもGETで受けてもログに出力できるようにする。
import json
def lambda_handler(event, context):
# 引数:eventの内容を表示
print("Received event: " + json.dumps(event))
# rawQueryString
rawQueryString = event['rawQueryString']
if(len(rawQueryString) != 0):
queryStringParameters = event['queryStringParameters']
print(queryStringParameters)
# body
body = event.get('body')
if(not body is None):
json_body = json.dumps(body)
print(json_body)
return {
'isBase64Encoded': False,
'statusCode': 200,
'headers': {},
'body': json.dumps('Hello from Lambda!')
}
- API Gatewayの作成については割愛。久々に作ってみたら前とかなり雰囲気が違っていてかなり戸惑った。