Laravel ist ein hervorragendes PHP-Framework, das häufig bei der Entwicklung von Webanwendungen verwendet wird. Im Standard-Benutzerauthentifizierungssystem von Laravel sind Verifizierungscodes standardmäßig aktiviert. Dies gewährleistet die Sicherheit bei der Benutzeranmeldung. In manchen Fällen möchten Sie jedoch möglicherweise die Bestätigungscodes deaktivieren. Wie kann man also Bestätigungscodes in Laravel deaktivieren? In diesem Artikel wird es Ihnen ausführlich vorgestellt.
Bestätigungscode in Laravel
Laravel verwendet standardmäßig den reCAPTCHA-Dienst von Google, um Bestätigungscodes zu generieren. In der Datei config/captcha.php können Sie die Standardoptionen für die Konfiguration des Bestätigungscodes sehen:
'captcha' => [ 'default' => [ 'length' => 6, 'width' => 150, 'height' => 40, 'quality' => 90, 'math' => true, 'expire' => 60, ], //其他选项 ]
In Laravel ist die Verwendung von Bestätigungscodes sehr einfach. Im Authentifizierungssystem von Laravel kann der Bestätigungscode aktiviert werden, indem der Anmeldeschnittstelle der folgende Code hinzugefügt wird:
@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
Bestimmen Sie unter anderem in der PHP-Datei, ob der Bestätigungscode generiert werden muss, indem Sie beurteilen, ob er in der Überprüfung aktiviert ist Code-Konfigurationsdatei. Verwenden Sie bei Bedarf die Funktion captcha_image(), um ein Verifizierungscodebild zu generieren. In der HTML-Vorlage wird der Bestätigungscode implementiert, indem das Bild angezeigt wird und der Benutzer die entsprechende Zeichenfolge eingeben kann.
Wie deaktiviere ich Captcha in Laravel?
Bei einigen Apps können Bestätigungscodes unnötig erscheinen oder das Benutzererlebnis beeinträchtigen. Manche Benutzer finden es lästig, zum Anmelden einen Bestätigungscode eingeben zu müssen. Wenn Sie Captcha in Laravel deaktivieren müssen, befolgen Sie bitte diese Schritte:
Schritt 1: Ändern Sie die Konfigurationsdatei
Setzen Sie in config/captcha.php die Aktivierungsoption auf false:
'captcha' => [ 'default' => [ 'length' => 6, 'width' => 150, 'height' => 40, 'quality' => 90, 'math' => true, 'expire' => 60, 'enable' => false, //将enable选项设置为false ], //其他选项 ]
Schritt 2: Entfernen Sie die HTML-Vorlage Code
In Laravel wird der Code zur Generierung des Bestätigungscodes normalerweise in die HTML-Vorlage geschrieben. Nachdem Sie CAPTCHA deaktiviert haben, sollten Sie diesen Code aus der entsprechenden HTML-Vorlage entfernen.
Schritt 3: AuthController ändern
AuthController ist Laravels integrierter Controller für die Benutzerauthentifizierung. Nachdem Sie den Bestätigungscode deaktiviert haben, müssen Sie auch die Methode login() im AuthController ändern.
Löschen Sie bei dieser Methode das folgende Code-Snippet:
if (config('captcha.default.enable')) { $rules = $request->rules(); $rules['captcha'] = 'required|captcha'; $request->validate($rules); }
Das obige Code-Snippet wird verwendet, um den Bestätigungscode zu überprüfen und eine Ausnahme auszulösen, wenn der Bestätigungscode nicht übereinstimmt. Nach der Deaktivierung des Bestätigungscodes wird dieser Code nicht mehr benötigt. Sie sollten es entfernen, um sicherzustellen, dass sich Benutzer normal anmelden können.
Zusammenfassung
Die Bestätigungscode-Funktion in Laravel ist standardmäßig aktiviert, was in den allermeisten Fällen die Sicherheit der Anwendung verbessern kann. In manchen Fällen kann es jedoch erforderlich sein, Bestätigungscodes zu deaktivieren. Das Deaktivieren von Captchas in Laravel ist sehr einfach. Ändern Sie einfach die Konfigurationsdatei für den Bestätigungscode, löschen Sie den Code in der HTML-Vorlage und ändern Sie die login()-Methode im AuthController.
Das obige ist der detaillierte Inhalt vonSo deaktivieren Sie die Bestätigungscode-Funktion in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!