完全にただのGitHubAPIへのアクセスプロキシみたいなものになってしまうのだが、まあちょっとしたサーバーを建てとくのも面倒だったりするので、AWSでやってみようということで手を動かしてみた。
やったこと
Lambda編
まずこれを参考にLambdaへGoのコードをデプロイしてみる。
AWS Lambda で Go が使えるようになったので試してみた | Developers.IO
あと公式ドキュメントも見たが、ほぼ同じだった。
Go の AWS Lambda 関数ハンドラー - AWS Lambda
特につまずいたところはなかったのだが、このあたりはもう少し簡単にコマンドラインベースで多分できるよなーと思ったので、後日調べようと思う。このあたりを後で読もうと思う。
ローカル環境でgoで書いた aws lambda用のコードを実行しちゃう
API GateWay編
この2つを参考に進めてみる。
- AWS Lambda + API Gateway + S3 で簡易Webアプリケーションを作成 | データスタジアム株式会社
- ゼロから作りながら覚えるAPI Gateway環境構築 | Developers.IO
2つ目のヤツのほうがわかりやすいし、APIキーの説明もあるしわかりやすいかも。
ハマりどころはとしては、APIキーでの認証を許可したあとうまくアクセスできないー、APIキーどこ!と思ったらデフォルトでは隠れてて、クリックしたら出てきたのでハイという感じだった。(キーとIDを間違えてヘッダーに設定していてはまり込んでいた)
あんまり真面目にここの公式ドキュメントを読み込んでいないので、これもそのうちコード値から定義できるのかなーとか思ってる。Swaggerの何かでできそうな雰囲気を感じたので、Swaggerで定義してAWSのラムダ関数を指定してあげる、とかで行けるのかなあとかぼんやり思ってる。
確認
Talend API Tester - Free Edition - Chrome ウェブストア で確認してみた。
使い方はこのへんとかが参考になりそう。 Talendで始めるREST APIテスト - Qiita
まとめ
今まであんまり真面目に触ったことがなかったけど、意外と使えそうな感じなので活用していきたいかも。小さいAPIみたいなのを立てたいときってまあまああるような気がしていて、これをうまいことを活用できるようになると趣味開発は特に捗りそうな気がします。
あとコードからデプロイする方法とかもそのうち学んでいきたいところ。。。