【GAS】WebアプリやAPIも作れちゃう!HtmlService、ContentServiceについて、できることをまとめてみた。Programming.Tech【GAS】WebアプリやAPIも作れちゃう!HtmlService、ContentServiceについて、できることをまとめてみた。API(今ここ!)HtmlServiceでAPI作れちゃうとか書きましたが、思いっきり訂正させてください。筆者がGASでAPIを作るときによく使うのは、「ContentService」でした。タイトルもその4から思いっきり訂正しています。いうことで、気を取り直して、GASでJSONを返すAPIを作ってみたいと思います。今までは、URLにアクセスがあった場合に、doGet関数の処理が起動し、HTMLをレスポンスとして返すということをしていました。ここではURLにアクセスがあった場合にJSONをレスポンスで返すということをしてみたいと思います。具体的には以下のようなコードになります。Webアプリケーションの基本で書いたように、Webアプリケーションの導入を行い、ブラウザでアクセスしてみると、以下のようにJSONのレスポンスが返ってくることがわかります。POSTリクエストの処理ブラウザでURLを入力し、リクエストする場合はGETリクエストとなります。GETリクエスト時にはdoGet関数が起動し、レスポンスを返していました。POSTリクエストは処理できないのでしょうか?いえいえ、そんなことはありません。GASにはPOSTリクエストに対応するdoPost関数があります。次は、doPost関数でレスポンスを返す処理を書いてみましょう。具体的には先ほどと同じように記述してみます。res}このdoPost関数の動きをチェックするためには、POSTリクエストを発行しなければいけません。チェックするのにもGASを使ってPOSTリクエストを発行してみましょう。具体的には以下のようなコードで、POSTリクエストを送信することができます。Logger.log(fetch.getContentText());}また、チェックする前に、Webアプリケーションにアクセスできるユーザーを誰でもアクセスできるようにしておきましょう。POSTリクエストには認証情報は何も付加されていないので、エラーとなります。実際にPOSTリクエストを発行すると、ログに以下のようなレスポンスが記録されています。リクエストパラメーターの取得doGet、doPostでは、リクエストパラメーターを取得できます。リクエストパラメーターというのは、GETリクエストでいうところのhttp://example.com?item1=hoge&item2=fugaの部分ですね。doGetを例にすると、以下のように記述できます。res}e.parameter.[parameterの名前]で取得できちゃいます。これについては、POSTでも同様に取得できます。これで例えば上記のようにGETリクエストをブラウザにて送信すると、以下のように、パラメーターによってレスポンスが変化していることがわかります。doGet、doPost内で処理を分岐させたいときなんかに便利です。JSONPこうなってくると、ブラウザのJavaScriptからAjaxでデータを取得したいという欲求も出てくるかと思いますが、やはりクロスドメインの問題が発生します。それを回避するための方法として、JSONPという手法があります。これにより、GASにブラウザからリクエストを送信し、JSONのレスポンスを受け取って、ブラウザで処理をする、といったことが可能となります。GAS側のコードそれでは、実際にやってみましょう。GAS側に以下のコードを記載します。res}ポイントとしては、createTextOutputしているところで、関数の文字列を作っているところです。このプロジェクトをWebアプリケーションとして公開し、URLをメモしておきます。ブラウザ側のコードそれではブラウザ側でこのdoGet関数を叩いてJSONを取得してみようと思います。説明する前にブラウザ側のコードを見ていただければと思います。</body></html>お分りいただけますでしょうか?先ほどメモしたURLをscriptタグに挿入しています。することで、GAS側で生成した関数の文字列をブラウザ側で実行するような処理がなされます。srcに挿入したURLのパラメーターに「myCallback」としていますので、このscriptタグを処理すると、ブラウザ側にてjsonが引数となるmyCallback関数が実行されます。ブラウザに、JSONの文字列が表示されれば成功です。まとめいかがでしたでしょうか?ちょっと上級テクニックな感じもしますが、GASの可能性が広がれば幸いです。Script【GAS】WebアプリやAPIも作れちゃう!HtmlServiceについて、できることをまとめてみた。Script【GAS】WebアプリやAPIも作れちゃう!HtmlServiceについて、できることをまとめてみた。Script【GAS】WebアプリやAPIも作れちゃう!HtmlServiceについて、できることをまとめてみた。Materialを使ってみた!(サンプルも作ってみました)この前の記事で、GASのWebアプリにVue.jsを組み込んでみたことを紹介しました。Materialを導入し、よりリッチなUIをお手軽に実現する方法をご紹介したいと思います。Scriptで作ってみた。LINEのチャットボットをGASで作ってみました。思ったよりも簡単にできたので、作り方をご紹介したいと思います。全体の流れは以下の図のようになります。Channel」と、「GAS」です。APIを使ってみたのでその備忘録です。APIUncategorizedVMWareVue.jsWordpressランディングページ(LP)タイトルとURLをコピーしました。