AWS Lambda

投稿日:

API Gatewayから呼び出されるときのパラメータ

GETの場合

eventqueryStringParameters という名前で入っている。 Rubyの場合以下のようにして取得可能。

def lambda_handler(event:, context:)
    params = event['queryStringParameters']
    puts "params:" + params.to_s
    if params != nil
        challenge = params['challenge']
        puts "challenge:" + challenge
    end

    # 省略
end

POSTの場合

eventbody という名前で入っている。 Rubyの場合以下のようにして取得可能。

def lambda_handler(event:, context:)
    body = event['body']
    if body != nil && body != ""
        params = URI.decode_www_form(body)
        # [["challenge", "abc"]] のような配列の配列として入る
    end

    # 省略
end

配列の配列にアクセスするためにはArray#assocというメソッドが便利です。