Hướng dẫn rest api php with authentication - phần còn lại api php với xác thực

Giới thiệu

Ở đây trong hướng dẫn này, Xác thực API PHP REST bằng JWT, bạn sẽ thấy cách sử dụng JWT [mã thông báo JSON Web] để ủy quyền cho người dùng và cho phép họ tiếp tục các tác phẩm của mình sau khi họ đăng nhập bằng thông tin đăng nhập thông thường [tên người dùng và mật khẩu]. Người dùng sử dụng thông tin đăng nhập của họ để có được JWTS và tiếp tục công việc của họ cho đến khi JWTS hết hạn. Trong ví dụ này, tôi sẽ không sử dụng bất kỳ thư viện bên thứ ba nào để tạo JWT.

Bạn có thể đã thấy cách tạo và xác nhận JWT bằng ngôn ngữ PHP mà không cần sử dụng bất kỳ thư viện bên thứ ba nào. Ở đây tôi sẽ sử dụng cùng một khái niệm để tạo JWT cho từng người dùng và cho phép anh ấy/cô ấy tiếp tục công việc của mình cho đến khi JWT hết hạn.

Tôi sẽ tạo API REST trong PHP cho các chức năng riêng lẻ, chẳng hạn như, để đăng nhập, tôi sẽ tạo một API REST riêng, để đăng ký tôi sẽ tìm ra API REST riêng biệt.

Điều kiện tiên quyết

Php 7.3.5 - 7.4.23, Apache 2.4 [Tùy chọn], MySQL 8.0.17 - 8.0.26, khách hàng REST - Talend, Postman, Firefox, v.v.

Bảng MySQL

Tạo người dùng bảng trong máy chủ MySQL trong cơ sở dữ liệu Roytuts.user in MySQL server under roytuts database.

CREATE TABLE `user` [
  `id` int NOT NULL AUTO_INCREMENT,
  `username` varchar[45] DEFAULT NULL,
  `password` varchar[255] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

Tôi chèn một hàng với dữ liệu mẫu vào cơ sở dữ liệu để kiểm tra ứng dụng ngay lập tức:

insert into user[`username`, `password`] value[‘roy’, ‘roy’];

Thư mục dự án

Nó giả định rằng bạn đã thiết lập Apache [tùy chọn, bạn có thể sử dụng máy chủ phát triển PHP tích hợp], PHP và MySQL trong hệ thống Windows.

Bây giờ tôi sẽ tạo một thư mục gốc dự án có tên là PHP-JWT-Rest-Authentication trong thư mục Apache Server HTDOCS. Tôi có thể không đề cập đến thư mục gốc dự án trong các phần tiếp theo và tôi sẽ cho rằng tôi đang nói về thư mục gốc của dự án.php-jwt-rest-authentication under the Apache server’s htdocs folder. I may not mention the project root directory in subsequent sections and I will assume that I am talking with respect to the project root directory.

Cấu hình cơ sở dữ liệu

Tạo tệp db.php cho các hoạt động cơ sở dữ liệu khác nhau, chẳng hạn như, chèn dữ liệu vào cơ sở dữ liệu MySQL, chọn dữ liệu từ cơ sở dữ liệu MySQL, v.v. Xin vui lòng không quên thay đổi thông tin xác thực cơ sở dữ liệu theo cơ sở dữ liệu của bạn.db.php file for various database operations, such as, inserting data into MySQL database, selecting data from MySQL database, etc. Please do not forget to change the database credentials as per your database.

Bài Viết Liên Quan

Chủ Đề