【ウディタ】GASで簡易サーバー設置と送受信

市販のゲームって購入時に初回特典でシリアルナンバーとか付いてくるじゃないですか
プロダクトコードとか言う場合もあるけど

指定の番号を入力するとアイテムを入手できる的な。あれ作ってみたいと思ってたんですが、最近Google Apps Script(GAS)という言語を使えば、ウディタで使用できるサーバーっぽいものを作れると知りまして。


いきなり高度なものは作れそうにないけど、データサーバー程度ならできそう!って思ったので作ってみましたという話になります。

ウディタ側

ウディタでGET送信する方法は以下で解説されてたので参考にしました。
dystopia39.blog.fc2.com


ちなみにGET送信とPOST送信はダウンロードコマンドの入力に違いがあるだけで、その他、パラメータの書き方などは同じ。
※今回はパラメータとして「mode」「code」を用意。
GET送信はURLとパラメータの間に「?」を入れ、POST送信は「POST送信」にチェックを入れればおk。

今回はPOST送信を使います。
GASがメインなので、ウディタの話はここまで。

GAS側

GAS側ではパラメータを受け取って、「mode」"Check"なら「code」に一致するコードの実行IDを返すようにします。
「mode」"Apply"ならコードを使用済みにして、使用日を記録します。

「mode」が"Check" 「code」が使用可能か確認、実行ID取得
「mode」が"Apply" 「code」使用許可の申請

ウディタ側では実行IDに対応する報酬を得るようにしておきます。



GASで簡易サーバーっぽいものを作成する方法は以下を参考にしました。
qiita.com
qiita.com



さっそくGoogle Spreadsheetを開いて管理シートを作成。


拡張機能Apps Scriptからエディタを起動、作成したコードは以下の通り。

動作確認


その他参考(GET送信/POST送信)

somachob.com
qiita.com