やりたいこと
[elm-landのAuthenticationのチュートリアル](https://elm.land/guide/user-auth.html)をやる。ただやるのではなく、JWTはサンプルのexpressサーバーから返すのではなく、firebase authから取得する。取得したJWTをちゃんとサーバーサイドでリクエストの都度検証する。
やったこと
AWS CognitoとAPI GatewayとLambdaを組み合わせてJWTを返すログインAPIを作ろうとした。→全部中途半端にいじり回して止まった。
firebase authで同じくJWTを返すAPIを作ろうとしたけどその前にfirebase authのサンプルやチュートリアルを見ながら小さい基本的なものを作ろうとした。→ドキュメントやサンプルやテンプレートそれぞれ微妙に書き方が違っていて意味を調べたりしていて止まった。
やってないこと
elm-landにはノータッチ
express製の簡易APIサーバーも作っていない
firebase authにユーザーを手動で作って備え付けのAPIでJWTを取得するようなこともしていない
反省点
まずはelm-landのチュートリアルの通りにやった方がよかった。
AWSとか触るにしても、例えばAPI GatewayでAPI作れてやったー、そこからLambda呼べてやったー、というふうに少しずつやっていくのがよかった。
頭の中で理解できた(と思い込んでいる)範囲をスモールステップするのを省略して、一気にやったがゆえに解決が難しくなってしまい、時間切れになり、こうしてポエムを書くことになる。
俺にはJWTによる認証は難しかったのかな?もっと基礎的なことをやっていた方が良いのかな?
そのようなことをChatGPTに聞いてみたところ、そうですねとは言われなかった。小さくタスクを分割することとか、毎日少しずつでも継続することとか、当たり前のようなことしか言われなかったけれど、実際、タスクを小さく分割することに失敗していたわけだから、このアドバイスは間違っていなかった。加えて、やっていれば必ずできるようになりますよ!的な励ましまでしてくれて、大変心強かった。