GASでGET,POSTを受け取る方法

久々のGASについてです!

個人的に作りたいアプリが浮かんだので、それを作るためにGASを使うことがあったのでおさらいがてら書きます✏️

参照:https://developers.google.com/apps-script/guides/web

やることはたった3つです!!!

  1. GET,POSTを受け取る関数を書く
  2. 公開する
  3. 動作確認してみる

1. GET,POSTを受け取る関数を書く

引数eでクエリストリングなどの詳細も取得できますー🌱
GETメソッドを受け取る場合

function doGet(e) {
  console.log('getされました');
}

POSTメソッドを受け取る場合

function doPost(e) {
  console.log('postされました');
}

2. 公開する

これをしないと、実際にこのGASにアクセスするURLが発行されません💦

  • ファイル > 版を管理…より説明文を適当に書いてバージョンをSave new version→OKします。
    (最初はバージョン1で保存されると思います。)
  • 公開 > ウェブアプリケーションとして導入 より、project versionを↑で保存したバージョンに、
    Execute the app as(アプリの実行方法)、Who has access to the app(アプリにアクセスできるユーザー)を選択し、「更新」を押下します。
  • Current web app URLが発行されます🚀
    このURLにリクエストすることで、1で作った関数が実行されるようになります。

3. 動作確認してみる

Talend API Testerを使って、リクエストしてみます。
「METHOD」を選んで、2で発行されたURLを貼り付けて、「Send」するだけです。
200が返ってきたので、いい感じそうです🍻

GASのログも確認してみましょう👀(表示 > ログ > App Scriptダッシュボード)

まとめ

個人的に、
Execute the app as(アプリの実行方法)、Who has access to the app(アプリにアクセスできるユーザー)の設定どうするかが気になりました。
個人で使うものであれば、「自分だけ(only myself)」がアクセスできて、「自分(me)」が実行でいいかなと思います。

curlコマンドのメモ

APIを取得したくて、
curlコマンドをよく使いますが、忘れるので備忘録として書きます。

Curlコマンド

– ■GET

curl -X GET https://example.com/?mode=show

curlコマンドは、
オプション  -X  でHTTPメソッドの指定ができます。
デフォルト(指定なし)はGETらしい。

 

– ■POST

curl -X POST -d "mode=insert" https://example.com/

オプション -d でフォームの送信(-dもしくは–data)をします。

 

– ■PUT

curl -X PUT -d "mode=delete&id=1" https://example.com/

最後に。。。

オプション -v
で詳細をログ出力(-vもしくは–verbose)できます。

curl -v -X POST -d "mode=insert&said=time is money&who=unknown" "https://example.com/"