GoogleフォームからAPI Gatewayで作成したREST APIにPOSTリクエストする
「API GatewayからLambdaを介さずにSNSトピックへ送信」の続きです。
API GatewayからSNSへ直接パブリッシュできたので、今度はそのREST APIにGoogleフォームからリクエストします。
この部分です。
目次
Google App Script コード
「ライブ配信のカレンダーをGoogle Apps Scriptとかで作りました」のコードに追加しました。
一応全部記載しておきます。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | function addCalendar(event) {   console.log(event);   var title = String(event.namedValues['ライブタイトル']);   var date = String(event.namedValues['日付']);   var startTimeStr = String(event.namedValues['開始時間']);   var endTimeStr = String(event.namedValues['終了時間']);   var introduction = String(event.namedValues['紹介文']);   var url = String(event.namedValues['URL']);   introduction += '\n'+url;   var startTime = new Date(date + ' ' + startTimeStr);   var endTime = new Date(date + ' ' + endTimeStr);   var options = {"description": introduction}   var calendar = CalendarApp.getCalendarById('xxxxxxxx@group.calendar.google.com');   var evet = calendar.createEvent(     title,     startTime,     endTime,     options   );    var payload = {     'title': title,     'startTime': date + ' ' + startTimeStr,     'endTime': date + ' ' + endTimeStr,     'description': introduction   };   var parameters = {     'method': 'post',     'contentType': 'application/json',     'payload': JSON.stringify(payload)   };   var api_endpoint = 'API ENDPOINT';   var response = UrlFetchApp.fetch(api_endpoint, parameters); } | 
var payload 以降が今回追加したコードです。
API ENDPOINTには実際のエンドポイントが入ります。
マニフェストファイル
「Google Apps Scriptのマニフェストファイルの編集」のマニフェストファイルにも追加です。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | {   "timeZone": "Asia/Tokyo",   "dependencies": {   },   "exceptionLogging": "STACKDRIVER",   "runtimeVersion": "V8",   "oauthScopes": [     "https://www.googleapis.com/auth/spreadsheets.currentonly",      "https://www.googleapis.com/auth/spreadsheets",     "https://www.googleapis.com/auth/calendar",     "https://www.googleapis.com/auth/script.external_request"   ] } | 
上記のようにして、一度スクリプトエディタの画面で手動で実行しておきました。
確認
「配信ライブカレンダー」の「カレンダーに配信ライブ予定を追加するにはこちらのリンクから」からのフォームから送信すると、SQSまでメッセージが届きました。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
 
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
 
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
 
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
 
「AWSではじめるLinux入門ガイド」という本を書きました。
 

開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-  
              
- 
      AWS SSOのパスワードリマインダーでADのパスワードを変更AWS Managed Microsoft ADを構築してユーザー追加までで構築 … 
-  
              
- 
      AWS LambdaでChrome HeadlessドライバをAWS Lambda Layersから使うこの記事はSelenium/Appium Advent Calendar 201 … 
-  
              
- 
      AWS Trusted Advisorの2023/11/17発表のAPI2023/11/17に発表されたAWS Trusted Advisor の新しい … 
-  
              
- 
      YouTubeチャンネル「ヤマムギ」をはじめましたYouTubeチャンネル「ヤマムギ」をはじめました。 2021年GWチャレンジと … 
-  
              
- 
      Amazon SageMaker AIのクイックセットアップAmazon SageMaker AI のクイックセットアップを使用するに記載の … 
-  
              
- 
      CodeGuru ProfilerでLambda関数(Python 3.9)のパフォーマンスを確認したCodeGuru ProfilerでPython 3.9のLambda関数の推奨 … 
-  
              
- 
      kintoneに登録されたアカウントの電話番号にGoogleカレンダーの予定をAmazon Pollyが読み上げてTwilioから電話でお知らせする(AWS Lambda Python)Google Calendar Twilio Reminder Googleカレ … 
-  
              
- 
      AWS Cost Explorerの設定で「EC2リソースの推奨事項を受け取る」を有効にしました「EC2リソースの推奨事項を受け取る」という機能がAWS Cost Explor … 
-  
              
- 
      ちょっとしたCLI作業にEC2起動テンプレートCLIでちょっとした作業したいだけのときに、Cloud9を使うまでもないなあと思 … 
-  
              
- 
      再会の日 ~re:Union 2018 Osaka by JAWS-UG~8/5は大阪でre:Unionでした。 「再会」と名うったこのイベントは、6月に … 



