Inertia は、サーバー側フレームワークの CORS 組み込みサポートを利用して、CORS (Cross-Origin Resource Sharing) の問題を処理します。 Inertia はサーバー側とクライアント側の両方で同じドメインを使用するため、CORS は重大な問題ではありません。重要なポイントは次のとおりです。
1. サーバー側フレームワークのサポート:
- Inertia はクライアント側と同じサーバー側フレームワークを使用します。これは、サーバー側フレームワークが Inertia の CORS を処理することを意味します。たとえば、Laravel は CORS の組み込みサポートを提供し、Inertia アプリケーション向けに CORS を簡単に構成できるようにします[1][3][5]。
2. 個別の CORS 構成は不要:
- 従来の API とは異なり、Inertia は別個の CORS 構成を必要としません。これによりプロセスが簡素化され、CORS[3][5] の管理の複雑さが軽減されます。
3. 組み込み認証:
- Inertia はサーバー側フレームワークの組み込み認証システムを使用するため、OAuth などの特別な認証システムは必要ありません。これは、認証システムがサーバー側で処理されるため、CORS が認証に関係ないことも意味します[5]。
4. 簡素化された開発:
- CORS に対する Inertia のアプローチにより、追加の CORS 構成と処理の必要性がなくなり、開発プロセスが簡素化されます。これにより、開発者は CORS の問題を気にせずにアプリケーションの構築に集中できるようになります[3][5]。
全体として、Inertia はサーバー側とクライアント側の両方で同じドメインを使用し、サーバー側フレームワークの CORS 組み込みサポートと組み合わせることで、追加の構成を行わずに CORS の問題を簡単に処理できるようになります。
引用:[1] https://laracasts.com/discuss/channels/vue/inertiavue-cors
[2] https://peterbabic.dev/blog/cors-problems-with-inertiajs-and-browsersync/
[3] https://blog.logrocket.com/introduction-to-inertia-js/
[4] https://laracasts.com/discuss/channels/laravel/laravel-9-vite-inertiajs-cors-issue-on-droplet
[5] https://inertiajs.com/authentication