CORS を許可する

APIなどのアプリケーションリソースに外部からのアクセスを受け入れるために CORS ヘッダーを設定する必要があるかもしれません。

Laravel で従来 CORS のヘッダーを設定するには barryvdh/laravel-cors のパッケージが提供するミドルウェアを利用するのがデファクトスタンダードでしたが、このパッケージは2019年末にリリースされた1.0よりfruitcake/laravel-corsへと引っ越し、名前空間が変化しました。

“CORS を許可する” の続きを読む

[Laravel 6.0+] ログイン・登録画面を用意する

Laravel で一般的なWebアプリを作るのにかかせない作業といえばなんでしょうか。といっても色々あるのは間違いないのですが、まあ多くの場合ログイン画面は欲しいものです。

Laravel ではこの認証画面や登録画面の典型的なものをコマンド一つで自動生成することができますが、 Laravel 6.0 ではこの部分が別パッケージに分離されたため追加でパッケージをインストールする必要があります。

“[Laravel 6.0+] ログイン・登録画面を用意する” の続きを読む

S3の署名付きURLを取得する

Laravel のファイルシステムはS3やRackspaceのようなオブジェクトストレージをサポートしています。S3にファイルを保管する際、誰でもアクセスできる状態ではあるべきではないファイルは多々あるでしょう。そういったファイルを利用者にDLさせる際にはPre-Signed(署名付き)URLが便利です。

“S3の署名付きURLを取得する” の続きを読む

特定のルートをCSRFトークンチェックを除外する

この投稿の内容は Laravel 5.1 以降のバージョンにおいて利用できます。

Laravel で外部からの Webhook を受けたいときなど、特定のルートだけCSRFトークンのチェックをバイパスする必要性がある場合があります。WebhookプロバイダはCSRFトークンを知るわけがなく、扱えませんから。 “特定のルートをCSRFトークンチェックを除外する” の続きを読む

配列フォームバリデーションの属性名を設定する

フォームバリデーションで配列の入力値を使用する際、その配列の属性名 (attribute) を設定していないと 「member.2.nameは必須です」 のような表示になってしまう。

属性名を設定しておけば通常のバリデーション同様には使える。

“配列フォームバリデーションの属性名を設定する” の続きを読む