ユーザが入力したデータを保存させたかったが、エラーに阻まれた。

ブツ

経緯

不特定多数の人々から各自アドレスとプロフィール情報を入力してもらい、それをスプレッドシートに保存するページを作りたい。そのためにGAS(Google Apps Script)を使った。

今回

ローカルではGASを使えたのでイケると思い、入力フォームを作った。JavaScriptでGASへGETとPOSTをした。が、CORSエラーに阻まれて実行できなかった。

CORSエラー

セキュリティ関係と思われる。

ローカルでcurlコマンドによりリクエストしたときは成功した。が、GitHub PagesでJavaScriptのfetchAPIを使ってリクエストするとCORSエラーになった。

GoogleのサーバがGitHub Pagesからのリクエストを拒否したものと思われる。

回避策はあるはず

GASはこういう用途で使えるサービスのはずなので、なにか手はあるはず。

あるいは不可能なら、GAS以外のFaaSを探すしかない。