LANG SELRCT

Google Apps Scriptのコードを書く場所  (新規作成: スプレッドシート | スクリプトエディタ

2019年2月23日土曜日

AWS LambdaでAPI Gatewayのクエリパラメータを渡したい(GASでfetch)


Lambda Function とAPI Gateway を使ったことがない場合
AWS LambdaとAPI Gatewayを使ってみる



API Gatewayのendpointにブラウザからアクセスする方法は
AWS LambdaでAPI Gatewayのクエリパラメータを取得したい
に書きました。

ここではGoogle Apps Script の UrlFetchApp.fetch で endpoint + クエリパラメータにアクセスして、Lambdaからの戻り値をログに出してみます。

https://API_ID.execute-api.us-east-1.amazonaws.com/default/FUNCTION_NAME?key=value


Google Apps Script側のコード

コード.gs
function run() {
  var url = 'https://API_ID.execute-api.us-east-1.amazonaws.com/default/FUNCTION_NAME?key=value';
  var response = UrlFetchApp.fetch(url);
  Logger.log(response);
}

意訳
この機能がやること
API Gatewayのendpointにクエリパラメータをつけて
urlにアクセスしてデータを取得して
ログに出す




Lambda 側のコード

index.js
exports.handler = async (event) => {
    var  param = event['queryStringParameters'];
    var  response = {
        body: JSON.stringify(param),
    };
    return response;
};
意訳
この機能がやること
受け取ったeventからクエリパラメータを取得して
返すオブジェクトを作って
JSONに変換してbodyの値として

返す



実行結果

Google Apps Script側のログに以下のように出ます

 {"key":"value"}


関連記事

最新の投稿

Google Apps Scriptでドキュメントに画像を配置したい(フォルダ内の複数画像)

Google Apps Scriptでドキュメントに画像を配置したい  では、ひとつの画像をドキュメントに配置しました。 今回は、特定のフォルダ内にある画像を一気に配置したくて書いたコードです。 画像が大きく見えるように画像サイズは1.2倍にしました。 コード.gs...