Trong hướng dẫn này, chúng tôi sẽ cho bạn biết cách tạo rest api đơn giản trong php từng bước ngay từ đầu. Trước khi bắt đầu, bạn nên biết về API và API còn lại là gì
API là gì?
Well API là viết tắt của giao diện lập trình ứng dụng xác định các chức năng và biến. hơn nữa Các hàm và biến này dùng để gọi nhằm thực hiện nhiệm vụ mong muốn của nó
Nó được sử dụng để giao tiếp với cơ sở dữ liệu thông qua phần mở rộng php. API chỉ là tập hợp các giao thức và công cụ để tạo ứng dụng phần mềm. Theo tôi API là cách đơn giản để tương tác với phân bổ một cách dễ dàng
Ở đây dưới đây bạn sẽ tìm thấy thông tin từng bước và hy vọng điều này sẽ rất có lợi cho người mới bắt đầu
“Một tập hợp các phương thức giao tiếp được xác định rõ ràng giữa các thành phần khác nhau. ”
API nghỉ ngơi là gì?
Rest API là sự kết hợp của hai chức năng cơ bản Rest là viết tắt của Chuyển trạng thái đại diện và API là viết tắt của Giao diện lập trình ứng dụng
Vâng Rest API là kiến trúc web nó sử dụng giao thức HTTP để trao đổi dữ liệu giữa hai chức năng có nghĩa là ứng dụng hoặc hệ thống của bạn
Về cơ bản, nó là tập hợp các chức năng được sử dụng để lấy dữ liệu bằng cách sử dụng giao thức HTTP như GET và POST và WWW là ví dụ tốt nhất về nó vì nó sử dụng kiến trúc giao thức còn lại để lấy dữ liệu
Công dụng của Rest API
Như các bạn đã biết Rest API là một chương trình sử dụng HTTP request để GET, POST, PUT, DELETE, OPTION AND HEAD dữ liệu
Dưới đây bạn có thể thấy các chức năng là gì
NHẬN - nó được sử dụng để truyền dữ liệu từ máy khách sang máy chủ trong giao thức HTTP bằng Chuỗi URL
POST - nó cũng được sử dụng để truyền dữ liệu từ máy khách sang máy chủ trong giao thức HTTP nhưng nó mang tham số yêu cầu trong nội dung thư giúp nó an toàn hơn
PUT - Yêu cầu phương thức này được sử dụng để đính kèm thực thể theo URL Yêu cầu được cung cấp
Tùy chọn - Nó cho biết kỹ thuật nào có thể hỗ trợ
HEAD - Nó trả về thông tin meta
Các bước để tạo Rest PHP trong API
Trước tiên, bạn phải tạo Cơ sở dữ liệu
CREATE DATABASE testapi;Thứ hai, bạn phải tạo bảng
CREATE TABLE IF NOT EXISTS `image_slider` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(64) NOT NULL, `description` varchar(255) NOT NULL, `image_url` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;Sau khi tạo cơ sở dữ liệu và bảng, bạn phải thêm dữ liệu vào bảng
INSERT INTO `image_slider` (`id`, `title`, `description`, `image_url`) VALUES (1, 'Slide 1', 'First of three slides', '//localhost/sliderimg/slide1.png'), (2, 'Slide 2', 'Second of three slides', '//localhost/sliderimg/slide2.png'), (3, 'Slide 3', 'Third of three slides', '//localhost/sliderimg/slide3.png');Bây giờ, hãy tạo tệp PHP để xuất dữ liệu ở định dạng Json
Sau Khi Chạy File, Bạn Sẽ Nhận Được Dữ Liệu Đầu Ra
[ { "id": "1", "title": "Slide 1", "description": "First of three slides", "image_url": "\/\/localhost\/sliderimg\/slide1.png" }, { "id": "2", "title": "Slide 2", "description": "Second of three slides", "image_url": "\/\/localhost\/sliderimg\/slide2.png" }, { "id": "3", "title": "Slide 3", "description": "Third of three slides", "image_url": "\/\/localhost\/sliderimg\/slide3.png" } ]Hy vọng bài viết này sẽ hữu ích cho bạn và bây giờ bạn có thể thấy cách đơn giản để tạo rest API trong PHP
Bạn sẽ cần biết API REST mà bạn đang gọi có hỗ trợ GET hoặc POST hay cả hai phương pháp. Mã bên dưới là thứ phù hợp với tôi, tôi đang gọi API dịch vụ web của riêng mình, vì vậy tôi đã biết API nhận những gì và nó sẽ trả về những gì. Nó hỗ trợ cả hai phương thức GET và POST, vì vậy thông tin ít nhạy cảm hơn sẽ được đưa vào URL (GET) và thông tin như tên người dùng và mật khẩu được gửi dưới dạng biến POST. Ngoài ra, mọi thứ đi qua kết nối HTTPS
Bên trong mã API, tôi mã hóa một mảng mà tôi muốn trả về định dạng json, sau đó chỉ cần sử dụng lệnh PHP echo $my_json_variable để cung cấp chuỗi json đó cho máy khách
Vì vậy, như bạn có thể thấy, API của tôi trả về dữ liệu json, nhưng bạn cần biết (hoặc xem dữ liệu được trả về để tìm hiểu) phản hồi từ API ở định dạng nào
Đây là cách tôi kết nối với API từ phía máy khách
$processed = FALSE; $ERROR_MESSAGE = ''; // ************* Call API: $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "//www.myapi.com/api.php?format=json&action=subscribe&email=" . $email_to_subscribe); curl_setopt($ch, CURLOPT_POST, 1);// set post data to true curl_setopt($ch, CURLOPT_POSTFIELDS,"username=myname&password=mypass"); // post data curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $json = curl_exec($ch); curl_close ($ch); // returned json string will look like this: {"code":1,"data":"OK"} // "code" may contain an error code and "data" may contain error string instead of "OK" $obj = json_decode($json); if ($obj->{'code'} == '1') { $processed = TRUE; }else{ $ERROR_MESSAGE = $obj->{'data'}; } ... if (!$processed && $ERROR_MESSAGE != '') { echo $ERROR_MESSAGE; }Nhân tiện, tôi cũng đã thử sử dụng phương pháp file_get_contents() như một số người dùng ở đây đã đề xuất, nhưng cách đó không hiệu quả với tôi. Tôi phát hiện ra phương pháp GET0 nhanh hơn và đáng tin cậy hơn