Laravel は、Web アプリケーションの開発で広く使用されている優れた PHP フレームワークです。 Laravel のデフォルトのユーザー認証システムでは、検証コードがデフォルトで有効になっています。これにより、ユーザーがログインするときのセキュリティが確保されますが、場合によっては確認コードをオフにすることが必要になる場合があります。では、Laravel で確認コードを無効にするにはどうすればよいでしょうか?この記事では詳しく紹介していきます。
Laravel の検証コード
Laravel は、デフォルトで Google の reCAPTCHA サービスを使用して検証コードを生成します。 config/captcha.php ファイルで、デフォルトの検証コード設定オプションを確認できます。
'captcha' => [ 'default' => [ 'length' => 6, 'width' => 150, 'height' => 40, 'quality' => 90, 'math' => true, 'expire' => 60, ], //其他选项 ]
Laravel では、検証コードの使用は非常に簡単です。 Laravelの認証システムでは、ログインインターフェースに以下のコードを追加することで認証コードを有効にできます。
@if (config('captcha.default.enable')) <div class="form-group"> <div class="col-md-offset-4 col-md-4"> <div class="captcha"> <span>{!! captcha_img() !!}</span> <button type="button" class="btn btn-success btn-refresh"><i class="fa fa-refresh"></i></button> </div> </div> </div> <div class="form-group"> <div class="col-md-offset-4 col-md-4"> <input id="captcha" type="text" class="form-control" placeholder="{{ trans('validation.attributes.captcha') }}" name="captcha"> </div> </div> @endif
このうち、PHPファイル内で認証コードが生成されるかどうかを判断し、認証コードを生成する必要があるかどうかを判断します。検証コード設定ファイルで有効にします。必要に応じて、captcha_image() 関数を使用して検証コード イメージを生成します。 HTML テンプレートでは、画像を表示し、ユーザーが対応する文字列を入力できるようにすることで検証コードが実装されます。
Laravel で確認コードをオフにする方法は?
一部のアプリケーションでは、確認コードが不要に見えたり、ユーザー エクスペリエンスを妨げたりする場合があります。ログインするために確認コードを入力しなければならないことを煩わしく感じるユーザーもいます。 Laravel でキャプチャをオフにする必要がある場合は、次の手順に従ってください:
ステップ 1: 構成ファイルを変更します
config/captcha.php で、enable オプションを false に設定します:
'captcha' => [ 'default' => [ 'length' => 6, 'width' => 150, 'height' => 40, 'quality' => 90, 'math' => true, 'expire' => 60, 'enable' => false, //将enable选项设置为false ], //其他选项 ]
ステップ 2: HTML テンプレート コードを削除する
Laravel では、通常、検証コード生成コードは HTML テンプレートに記述されます。 CAPTCHA をオフにした後、対応する HTML テンプレートからこのコードを削除する必要があります。
ステップ 3: AuthController を変更する
AuthController は、ユーザー認証用の Laravel の組み込みコントローラーです。検証コードをオフにした後、AuthController の login() メソッドも変更する必要があります。
このメソッドでは、次のコード スニペットを削除します。
if (config('captcha.default.enable')) { $rules = $request->rules(); $rules['captcha'] = 'required|captcha'; $request->validate($rules); }
上記のコード スニペットは、検証コードを検証するために使用され、検証コードが一致しない場合は例外をスローします。確認コードをオフにすると、このコードは必要なくなります。ユーザーが正常にログインできるようにするには、これを削除する必要があります。
概要
Laravel の検証コード機能はデフォルトで有効になっており、ほとんどの場合、アプリケーションのセキュリティを向上させることができます。ただし、場合によっては、確認コードをオフにすることが必要になる場合があります。 Laravel でキャプチャをオフにするのは非常に簡単です。検証コード構成ファイルを変更し、HTML テンプレート内のコードを削除し、AuthController 内の login() メソッドを変更するだけです。
以上がlaravelの認証コード機能をオフにする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。