Laravel 8 ví dụ API quên mật khẩu

Tiết kiệm thời gian tạo hàm quản lý quên mật khẩu trong laravel cho Api của bạn. Gói này sẽ thêm một khóa mới vào mô hình người dùng của bạn, cùng với hai tuyến đường mới sẽ xử lý mật khẩu đã quên và đặt lại

Sử dụng nhanh

nhà soạn nhạc

composer require appoly/api-password-helper

Cách sử dụng

Thêm khóa mới vào bảng người dùng của bạn

php artisan migrate

Mô hình người dùng cần phải được thông báo vì một email sẽ được tự động gửi cho họ

class User extends Authenticatable
{
    use Notifiable;

tuyến đường

Hai tuyến đường mới sẽ được tạo trong ứng dụng của bạn

GET: /api/[email protected]

Tuyến Post nhận hai tham số dữ liệu dạng trong khóa yêu cầu và mật khẩu

POST: /api/forgot-password

Nếu mô hình người dùng của bạn có

php artisan migrate
1, hãy đảm bảo rằng
php artisan migrate
2 được thêm vào danh sách các trường được phép cập nhật

chỉnh sửa email

Để chỉnh sửa email, bạn cần xuất bản cấu hình cho dự án của mình bằng cách sử dụng

php artisan vendor:publish --tag=api-password-helper-config --force

Thao tác này sẽ thêm tệp LaravelApiPasswordHelper vào thư mục cấu hình của bạn, từ đó bạn có thể chỉnh sửa các phần khác nhau của email

Trong hướng dẫn này, chúng ta sẽ tìm hiểu từng bước Ví dụ về Quên & Đặt lại mật khẩu tùy chỉnh của Laravel 8 giải thích cách đặt lại mật khẩu tùy chỉnh trong Laravel 8. Chúng tôi sẽ giải thích mật khẩu đặt lại tùy chỉnh của Laravel gửi email. Chúng tôi sử dụng chức năng quên mật khẩu của Laravel để gửi các liên kết đặt lại mật khẩu

Tôi xin chia sẻ Ví dụ về Quên & Đặt lại mật khẩu tùy chỉnh của Laravel 8. Trong hướng dẫn này, bạn sẽ tìm hiểu Ví dụ về Quên & Đặt lại mật khẩu tùy chỉnh của Laravel 8. Và nếu bạn muốn xem một ví dụ về cách tạo chức năng Quên & Đặt lại mật khẩu tùy chỉnh của Laravel 8, bạn đang ở đúng nơi. Trong hướng dẫn này, Chúng tôi đã tạo một ví dụ cơ bản về Ví dụ về Quên & Đặt lại mật khẩu tùy chỉnh của Laravel 8

Bây giờ chúng tôi muốn tạo chức năng quên mật khẩu tùy chỉnh của bạn, nó sẽ giúp tạo chức năng đặt lại mật khẩu tùy chỉnh trong Laravel 8

Bạn có thể thấy trang đăng nhập dưới đây thêm liên kết quên mật khẩu

Laravel 8 ví dụ API quên mật khẩu
Laravel 8 ví dụ API quên mật khẩu
liên kết quên mật khẩu

Mục lục

  1. Cài đặt Laravel
  2. Kiểm tra bảng password_reset
  3. Tạo tuyến đường
  4. Thêm bộ điều khiển
  5. Định cấu hình email
  6. Tạo tập tin Blade

Cài đặt Laravel

Đầu tiên, chúng tôi tạo một ứng dụng Laravel 8 mới bằng lệnh bên dưới. Bây giờ, hãy mở dấu nhắc lệnh của bạn và chạy lệnh bên dưới

composer create-project --prefer-dist laravel/laravel blog

Kiểm tra bảng password_reset

Laravel mặc định tạo bảng password_reset, còn bảng password_reset không được tạo bạn thêm vào như lệnh và code bên dưới

php artisan make:migration create_password_resets_table
#database\migrations\2021_09_09_100000_create_password_resets_table.php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreatePasswordResetsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('password_resets', function (Blueprint $table) {
            $table->string('email')->index();
            $table->string('token');
            $table->timestamp('created_at')->nullable();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('password_resets');
    }
}

Tạo tuyến đường

Bây giờ, chúng ta có thể tạo một tuyến đường tùy chỉnh để quên và đặt lại liên kết

#routes/web.php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\Auth\ForgotPasswordController;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('forget-password', [ForgotPasswordController::class, 'ForgetPassword'])->name('ForgetPasswordGet');
Route::post('forget-password', [ForgotPasswordController::class, 'ForgetPasswordStore'])->name('ForgetPasswordPost');
Route::get('reset-password/{token}', [ForgotPasswordController::class, 'ResetPassword'])->name('ResetPasswordGet');
Route::post('reset-password', [ForgotPasswordController::class, 'ResetPasswordStore'])->name('ResetPasswordPost');

Thêm bộ điều khiển

Laravel mặc định cung cấp ForgotPasswordController. Và chúng ta có thể chỉ cần đặt đoạn mã dưới đây

php artisan migrate
0

Định cấu hình email

Chúng tôi sẽ thêm cấu hình email trên. env và chúng tôi sẽ gửi email để đặt lại liên kết mật khẩu từ bộ điều khiển

Làm cách nào để tạo API quên mật khẩu trong Laravel 8?

Bước 1. Tạo bảng mã đặt lại mới . 2- mở di chuyển reset_code_passwords_table và sẽ giống như thế này. Lược đồ. tạo('reset_code_passwords', function (Bản thiết kế $table) { $table->string('email')->index(); $table->string('code'); $table->timestamp('created_at')

Làm cách nào để triển khai API quên mật khẩu?

Triển khai quy trình quên mật khẩu (với mã giả).
Người dùng nhập email của họ vào giao diện người dùng yêu cầu đặt lại mật khẩu. .
Tạo mã thông báo đặt lại mật khẩu. .
Lưu trữ mã thông báo trong cơ sở dữ liệu. .
Người dùng nhấp vào liên kết trong email. .
Mật khẩu mới được gửi cùng với mã thông báo tới back-end. .
Điều gì xảy ra ở back-end

Làm cách nào để tạo API quên mật khẩu trong php?

Các bước khôi phục mật khẩu khi quên (Đặt lại) bằng PHP và MySQL .
Tạo bảng mã thông báo tạm thời
Tạo kết nối cơ sở dữ liệu
Tạo một tệp chỉ mục (Gửi email)
Tạo tệp đặt lại mật khẩu
Tạo một tệp CSS

Làm cách nào để tạo mật khẩu đặt lại trong Laravel?

Ngoài ra, tôi đã sử dụng cái này trên Laravel 5. 2 nhưng nó sẽ hoạt động với những cái khác, mới và cũ. .
Bước 1 - Tạo Tuyến đường và Bộ điều khiển. .
Bước 2— Thay đổi thuộc tính hành động trên biểu mẫu đặt lại mật khẩu mặc định. .
Bước 2 — Tạo mã thông báo và gửi liên kết đặt lại mật khẩu qua email. .
Bước 3 - Đặt lại mật khẩu của Người dùng