見出し画像

【GASを使ったHTTP通信】GASでHTTP通信

1.GASの始め方
先ずは下記のURLからGoogle Driveに移動します。
https://drive.google.com/drive/my-drive
「新規」を押して「その他」を選択、GoogleAppsScriptが入っているならそれをクリック。
なければ一番下の「アプリを追加」をクリックします。
上の方に「虫眼鏡のマーク」があるので、そこを押してGoogle Apps Scriptと検索し、結果からGASをインストールしてください。
すると最初の「新規」→「その他」のところにGASが追加されていますので、そちらをクリックして新しいファイルを生成してください。

2.GASでHTTP通信
・プロジェクトの名前設定
1.GASの始め方で新規ファイル生成まで出来たはずです。
左上に無題のプロジェクトとあると思うので、そこをクリックして今回は「TestHTTP_GET」として保存します。
すぐには反映されないので気になる方はページをリロードしてください。

・ファイルの名前設定
左側に「コード.gs」と書いてあると思います。
そこの「逆三角形」を押して「Rename」でファイル名を変えられます。
今回は「main」で保存してください。するとファイル名が「main.gs」に変更されます。

・doGet関数
GETメソッドでHTTP通信した時の処理を書いていきます。
現在エディタの中には

function myFunction() {

}


このように書いてあると思いますが以下の様に書き換えて下さい。

ffunction doGet(e){
return ContentService.createTextOutput("Hello,world");
}


dpGet()はGETメソッドで通信された場合に処理するための関数です。
今回は通信がきたら「Hello,world」を返します。

・公開
それでは今書いたコードにアクセス出来るように公開します。
ここからは新しいエディタと古いエディタで操作が違うので気を付けて下さい。

古いエディタ
上の方にある「公開」を押してウェブアプリケーションとして導入を選択します。
Project Versionは未記入で大丈夫です。自動で変更してくれます。
Execute the app asは誰としてアプリを実行するかですが自分(Me)で実行します。
Who has access to the appではこのwebアプリにアクセスできるユーザーを制限できます。
今回は全員アクセス出来るようにAnyoneでお願いします。
出来たら下の「Deproy」を押します。これで公開されました。

新しいエディタ
上の方にある「デプロイ」を押して「新しいデプロイ」を選択します。
新しいデプロイの画面が開かれるので左側の「種類の選択」から「ウェブアプリ」を選択します。
次に、右側で公開設定します。
「説明」は不要なので省きます。
「次のユーザーとして実行」は自分を選択してください。
「アクセス出来るユーザー」は全員を選択してください。
最後に「デプロイ」を押して公開します。

公開されたのでGET通信出来るようになりました。

・GET通信してみる
それでは実際に通信してみます。
先ほど公開後にURLが表示されたと思うのでURLをコピーしてください。
されなかった人、スルーした人は公開をもう一度押してみたり、
デプロイを管理を押してみるともう一回URLが表示されます。

では、ブラウザで新しくタブを生成し、URLを貼り付けて開いて見てください。
すると「Hello,world」と表示されます。これでGETメソッドでのHTTP通信が完了です。
curlでは以下のようになります。

コマンド
>curl -L URL

出力結果
Hello,world

3.まとめ
今回は基礎的な部分を説明しながら、かなり簡易的なプログラムでHTTP通信を行いました。
GASではGET以外にもPOSTを使ったHTTP通信や、Googleサービスを絡めたHTTP通信が出来るので、興味を持った方はさらに勉強してみると良いと思います。

参考URL
・https://note.com/koushikagawa/n/n04aed663361f
・https://ytyaru.hatenablog.com/entry/2017/01/04/000000