Laravel-guest-user-gates

提供:Dev Guides
移動先:案内検索

Laravel-ゲストユーザーゲート

Guest User Gates機能は、2018年9月にリリースされた最新の5.7バージョンのアドオンです。 この機能は、特定のユーザーの承認プロセスを開始するために使用されます。

Laravel 5.6には、認証されていないユーザーに対して false を返す手順がありました。 Laravel 5.7では、以下に示すように、指定されたコントローラ内で特定の nullable タイプヒントを使用することにより、ゲストが認証チェックに行くことを許可できます-

<?php
Gate::define('view-post', function (?User $user) {
  //Guests
});

コードの説明

*nullable* タイプヒントを使用すると、ゲストユーザーがゲートに渡されたときに$ user変数がnullになります。 その後、アクションの承認に関する決定を下すことができます。 null許容型を許可し、trueを返す場合、ゲストには承認があります。 nullable型のヒントを使用しない場合、ゲストはLaravel 5.7の403応答を自動的に取得します。これは以下に表示されます-

Nullable Type Hint

403エラーと404エラーの違いは、ユーザーが不明なリソースまたはURLにアクセスしようとすると404が表示され、許可されていないユーザーがWebサイトにアクセスすると上記のスナップショットで述べた403エラーが表示されることです。