Maison >cadre php >Laravel >implémentation de la connexion Laravel

implémentation de la connexion Laravel

WBOY
WBOYoriginal
2023-05-29 09:15:37763parcourir

Laravel est un framework PHP populaire qui fournit de nombreux outils et fonctionnalités puissants pour aider les développeurs à créer facilement des applications WEB. Parmi eux, la mise en œuvre de la fonction de connexion constitue une étape importante dans le développement d’applications. Cet article expliquera comment implémenter la fonction de connexion dans Laravel.

  1. Installer Laravel

Laravel peut être installé via Composer, un outil de gestion des dépendances PHP. Pour installer Composer, entrez la commande suivante :

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

Une fois l'installation terminée, utilisez la commande suivante pour créer l'application Laravel.

composer create-project --prefer-dist laravel/laravel projectname
  1. Configuration de la base de données

Avant d'utiliser le système d'authentification de Laravel, vous devez configurer la base de données. Ouvrez le fichier .env et modifiez les paramètres de connexion à la base de données dans l'exemple suivant. .env 文件,更改以下示例中的数据库连接设置。

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=mydatabase
DB_USERNAME=root
DB_PASSWORD=
  1. 生成用户认证系统

运行以下命令生成 Laravel 的用户认证系统。

php artisan make:auth

这将创建一个用户注册、登录和注销的基本视图和控制器。

  1. 创建用户模型

接下来,需要创建一个用户模型,Laravel默认提供的用户模型是AppUser,可以使用以下命令创建。

php artisan make:model User
  1. 注册和登录验证

注册验证:

public function store(Request $request)
{
    $this->validate($request, [
        'name' => 'required',
        'email' => 'required|email|unique:users,email',
        'password' => 'required|min:6|confirmed',
    ]);
    $user = User::create([
        'name' => $request['name'],
        'email' => $request['email'],
        'password' => bcrypt($request['password']),
    ]);
    Auth::login($user);
    return redirect()->route('dashboard');
}

登录验证:

public function login(Request $request)
{
    $this->validate($request, [
        'email' => 'required|email',
        'password' => 'required|min:6',
    ]);
    $credentials = [
        'email' => $request['email'],
        'password' => $request['password'],
    ];
    if (Auth::attempt($credentials)) {
        return redirect()->intended('dashboard');
    } else {
        return redirect()->back()->withInput($request->only('email', 'remember'));
    }
}

以上代码中,attempt方法将验证用户凭据,如果通过验证,将会将用户状态通过session保存,并且可以使用Auth::check方法检查用户是否已登录。

  1. 中间件

中间件提供了对应用程序的进一步控制和保护。Laravel已经预定义了许多中间件,包括验证用户是否登录的中间件。

在应用程序中添加认证中间件,并将其应用于需要保护的路由:

Route::middleware(['auth'])->group(function () {
    Route::get('/dashboard', 'DashboardController@index')->name('dashboard');
});
  1. 强制使用 HTTPS

在Laravel中,可以轻松地将应用程序强制使用HTTPS:

.env中添加以下行:

APP_ENV=production
APP_URL=https://example.com

然后,打开AppServiceProvider

public function boot()
{
    if (config('app.env') === 'production') {
        URL::forceScheme('https');
    }
}

    Générer le système d'authentification utilisateur

      Exécutez la commande suivante pour générer le système d'authentification utilisateur de Laravel.
    1. rrreee
    2. Cela créera une vue de base et un contrôleur pour l'enregistrement, la connexion et la déconnexion des utilisateurs.

      Créer un modèle utilisateur

      🎜🎜Ensuite, vous devez créer un modèle utilisateur fourni par Laravel par défaut est AppUser, qui peut être créé à l'aide du. commande suivante. 🎜rrreee
        🎜Vérification de l'inscription et de la connexion🎜🎜🎜Vérification de l'inscription : 🎜rrreee🎜Vérification de la connexion : 🎜rrreee🎜Dans le code ci-dessus, la méthode tentative vérifiera les informations d'identification de l'utilisateur , s'il est réussi Pour vérification, le statut de l'utilisateur sera enregistré tout au long de la session et la méthode Auth::check peut être utilisée pour vérifier si l'utilisateur est connecté. 🎜
          🎜Middleware🎜🎜🎜Le middleware offre un contrôle et une protection supplémentaires des applications. Laravel dispose de nombreux middlewares prédéfinis, notamment un middleware qui vérifie si l'utilisateur est connecté. 🎜🎜Ajoutez un middleware d'authentification à votre application et appliquez-le aux routes qui doivent être protégées : 🎜rrreee
            🎜Forcer HTTPS 🎜🎜🎜Dans Laravel, il est facile de forcer votre application à utiliser HTTPS HTTPS : 🎜🎜Ajoutez la ligne suivante dans .env : 🎜rrreee🎜 Ensuite, ouvrez la classe AppServiceProvider et ajoutez la ligne suivante : 🎜rrreee🎜Cela forcera l'URL de l'application. le lien est converti en protocole HTTPS. 🎜🎜🎜Résumé🎜🎜🎜Jusqu'à présent, cet article a présenté comment implémenter la fonction de connexion dans Laravel, notamment l'installation de Laravel, la configuration de la base de données, la génération d'un système d'authentification utilisateur, la création d'un modèle utilisateur, l'enregistrement et la vérification de la connexion, le middleware et le forçage. l'utilisation du HTTPS. L'utilisation des étapes fournies dans cet article pour implémenter la fonctionnalité de connexion de Laravel peut vous aider à créer des applications plus sécurisées et riches en fonctionnalités. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn