Ubuntu 18.04 on Windows10(VirtualBox)で Laravel フレームワークを学習してみよう その2

この20日間程、午前中のアルバイト後に2~4時間程度と時間を区切ってLaravelの学習を続けてきた。
※余談ですが、暑い日は自宅の電気代節約も兼ねて市の図書館を利用させてい頂いた。

 

ネットの情報を基に次の9つの機能を実際に構築して学習してきた。
ネット情報には感謝するしかありません。

本も出版されているようなのですが今回はネット情報のみでの学習でした。

 

1.Laravelのインストール
2.LaravelでのMVC(Model・View・Control)を学ぶ
3.ログ出力、DebugBarを使う
4.データベースアクセスのトランザクション処理を学ぶ
5.Laravelの middleware を学ぶ
6.Laravelの Test(テスト)環境を学ぶ
7.Laravelのユーザ認証機能を学ぶ
8.Laravel API を学ぶ
9.Laravel passport(OAuth2)を学ぶ

 

laravel passport(OAuth2)の導入と動作確認作業には手こずってしまった。

OAuthという認証の仕組みが複雑(パスフレーズ:暗号用の文字列が何種類も出てくる)で理解するのが大変だったり、だったら、動かしてみたら感覚的に解かるのではないかとネットの情報で構築を先走ったりと結構苦労しました。

 

Laravel Passportを勉強しているつもりが途中、JavaScriptフレームワークの一つでもある Vue.js が必要となり、わき道にそれて、その脇道が意外に奥深くて学習の本筋から離れて行ったりと右往左往しながら進めました。

 

OAuthの仕組みを理解できたから Laravel passport を動かすことが出来たのか、はたまた、Laravel passport を動かすことが出来たから OAuthの仕組みが理解できたのかは定かではないが、頭の中だけで仕組みを考えるよりは実際に動くものを触れることは理解を深める助けになったことは間違えないと思う。

 

9つの学習項目を一つ一つ学んでいって Laravel を使ってWebアプリ・Web-Api開発を行おうとした場合に、どのように使って行こうかと考えるのに役立ちそうなLaravelの機能の全体像(イメージ)を自分なりにまとめてみました。

 

MiddleWareはグループ化出来たり、routes\web.php で個別に設定出来たりと例外的なこともありますが、以下のような感じのイメージとなりました。

 

 

Laravel passport についてはいろいろと試行錯誤を繰り返していたので、現在頭の中の整理を進めています。整理がついたら自分なりの Laravel Passportの OAuth2 の仕組みをイメージ図にまとめてみたいと思います。

 

とりあえず、今回は Laravel の httpリクエスト受信からそのレスポンス送信までの流れと、その流れの中で関連し合うコンポーネントのつながりを自分なりにまとめてみました。

 

それから、9つの学習項目を行った際に参考にさせて頂いたWebサイトの情報も整理して記載したいと思っています。