Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pengesahan keselamatan PHP dengan Laravel Jetstream

Pengesahan keselamatan PHP dengan Laravel Jetstream

PHPz
PHPzasal
2023-07-24 10:17:151219semak imbas

Pengesahan keselamatan PHP melalui Laravel Jetstream

Ikhtisar:
Dengan perkembangan pesat Internet, tapak web dan aplikasi mempunyai keperluan yang semakin tinggi untuk pengesahan pengguna. Untuk memastikan keselamatan maklumat dan data pengguna, pembangun perlu menggunakan mekanisme pengesahan yang boleh dipercayai untuk melindungi privasi dan keselamatan pengguna. Laravel Jetstream ialah rangka kerja pengesahan yang disediakan untuk pembangun Laravel. Ia boleh menyepadukan berbilang kaedah pengesahan dengan cepat, sangat memudahkan proses pembangunan. Artikel ini akan memperkenalkan cara menggunakan Laravel Jetstream untuk melaksanakan pengesahan keselamatan PHP dan memberikan contoh kod yang sepadan.

  1. Pengenalan kepada Laravel Jetstream
    Laravel Jetstream ialah penyedia pengesahan Laravel rasmi yang dioptimumkan untuk skalabiliti dan fleksibiliti rangka kerja Laravel. Laravel Jetstream menyediakan satu set antara muka dan fungsi pengesahan pengguna sedia, termasuk pendaftaran, log masuk, pengurusan pengguna, dsb. Ia juga menyokong pelbagai kaedah pengesahan seperti kod pengesahan e-mel, pengesahan API, dll., sesuai untuk pelbagai jenis aplikasi.
  2. Prasyarat
    Sebelum anda bermula, pastikan anda telah memasang Laravel dan Jetstream. Ia boleh dipasang melalui arahan berikut:
composer global require laravel/installer
laravel new project-name
composer require laravel/jetstream
  1. Buat Projek Laravel Jetstream
    Mula-mula, buat projek Laravel Jetstream baharu dengan menjalankan arahan berikut:
laravel new project-name
cd project-name
composer require laravel/jetstream
php artisan jetstream:install livewire
  1. Konfigurasikan persekitaran
    Selepas menjana pemasang Jetstream, anda memerlukan pemasang Jetstream. untuk menjalankan Migrate dan menjana fail pemasangan Jetstream.
php artisan migrate
php artisan jetstream:install livewire
  1. Persediaan dan Konfigurasi
    Jetstream menggunakan Livewire sebagai rangka kerja bahagian hadapan secara lalai, jadi anda perlu menambah kandungan berikut pada resources/views/layouts/app.blade.php projek fail: resources/views/layouts/app.blade.php 文件中添加以下内容:
@livewireStyles

同时,在 routes/web.php 文件中添加以下代码:

use AppHttpControllersProfileController;

Route::middleware(['auth:sanctum', 'verified'])->group(function () {
    Route::get('/profile', [ProfileController::class, 'show'])
                ->name('profile.show');
});
  1. 构建用户界面
    Laravel Jetstream 使用 Blade 模板引擎来渲染用户界面。通过以下命令来生成用户界面的模板文件:
php artisan jetstream:components
  1. 创建用户控制器
    在 Jetstream 中,可以自定义用户控制器来处理用户相关的逻辑。可以通过运行以下命令来创建一个名为 ProfileController 的控制器:
php artisan make:controller ProfileController

然后,在 app/Http/Controllers/ProfileController.php 文件中添加以下内容:

<?php

namespace AppHttpControllers;

use IlluminateHttpRequest;

class ProfileController extends Controller
{
    public function show()
    {
        return view('profile.show');
    }
}
  1. 创建路由
    routes/web.php 文件中添加以下代码来定义用户的路由:
use AppHttpControllersProfileController;

Route::middleware(['auth:sanctum', 'verified'])->group(function () {
    Route::get('/profile', [ProfileController::class, 'show'])
                ->name('profile.show');
});
  1. 创建视图模板
    resources/views/profile/show.blade.php 文件中添加以下代码来创建视图模板:
<x-jet-authentication-card>
    <x-slot name="logo">
        <x-jet-authentication-card-logo />
    </x-slot>

    <x-jet-validation-errors class="mb-4" />

    <x-jet-label value="Name" />
    <x-jet-input type="text" class="block mt-1 w-full" wire:model.defer="name" />

    <x-jet-label value="Email" />
    <x-jet-input type="email" class="block mt-1 w-full" wire:model.defer="email" />

    <x-jet-label value="Password" />
    <x-jet-input type="password" class="block mt-1 w-full" wire:model.defer="password" />

    <x-jet-label value="Confirm Password" />
    <x-jet-input type="password" class="block mt-1 w-full" wire:model.defer="password_confirmation" />

    <div class="mt-4">
        <x-jet-button type="submit">
            {{ __('Save') }}
        </x-jet-button>
    </div>
</x-jet-authentication-card>
  1. 测试身份验证功能
    现在可以通过访问项目的 URL 来测试身份验证功能了。访问 /register 页面注册一个新用户,并登录到 /profile
  2. rrreee
Selain itu, tambahkan kod berikut dalam fail routes/web.php:

rrreee


    Membina antara muka penggunaLaravel Jetstream menggunakan templat Blade enjin untuk memaparkan antara muka pengguna. Gunakan arahan berikut untuk menjana fail templat untuk antara muka pengguna:

    rrreee
      🎜Buat pengawal pengguna🎜Dalam Jetstream, pengawal pengguna boleh disesuaikan untuk mengendalikan logik berkaitan pengguna. Anda boleh mencipta pengawal bernama ProfileController dengan menjalankan arahan berikut: 🎜🎜rrreee🎜 Kemudian, tambah kandungan berikut dalam fail app/Http/Controllers/ProfileController.php : 🎜rrreee
        🎜Buat laluan 🎜Tambahkan kod berikut dalam fail routes/web.php untuk menentukan laluan pengguna: 🎜🎜rrreee
          🎜Buat templat paparan 🎜Tambahkan kod berikut dalam fail resources/views/profile/show.blade.php untuk mencipta templat paparan: 🎜🎜rrreee
            🎜Ujian kefungsian pengesahan 🎜Anda kini boleh menguji kefungsian pengesahan dengan mengakses URL projek. Lawati halaman /register untuk mendaftarkan pengguna baharu dan log masuk ke halaman /profile untuk melihat halaman maklumat peribadi pengguna. 🎜🎜🎜Ringkasan:🎜Dengan Laravel Jetstream, kami boleh melaksanakan pengesahan keselamatan PHP dengan mudah. Ia menyediakan pelbagai kaedah pengesahan dan antara muka pengguna yang boleh disesuaikan yang boleh memenuhi keperluan pelbagai aplikasi dengan mudah. Di atas ialah pengenalan dan langkah untuk menggunakan Laravel Jetstream untuk melaksanakan pengesahan keselamatan PHP. Saya harap ia akan membantu kerja pembangunan anda. 🎜🎜Di atas ialah keseluruhan kandungan artikel ini, melaksanakan pengesahan keselamatan PHP melalui Laravel Jetstream. Harap ini membantu! 🎜

Atas ialah kandungan terperinci Pengesahan keselamatan PHP dengan Laravel Jetstream. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn