⊗ppSpAiRs 52 of 83 menu

REST API di PHP

Ada pendekatan khusus, yang menstandarisasi API untuk kenyamanan bersama baik bagi pengembang API, maupun penggunanya.

Salah satu pendekatan tersebut adalah REST API. Dasar pemikirannya adalah bahwa untuk operasi CRUD perlu menggunakan berbagai metode protokol HTTP.

Untuk mengambil data - metode GET, untuk membuat data - metode POST, untuk mengubah data - metode PUT, untuk menghapus data - metode DELETE.

Sebagai contoh mari kita lihat suatu API, yang memanipulasi pengguna. Mari kita lihat, bagaimana URL untuk berbagai tindakan akan terlihat.

Mendapatkan semua pengguna:

GET http://api.loc/users/

Mendapatkan satu pengguna berdasarkan id-nya:

GET http://api.loc/user/1/

Membuat pengguna:

POST http://api.loc/user/

Mengubah pengguna berdasarkan id-nya:

PUT http://api.loc/user/1/

Menghapus pengguna berdasarkan id-nya:

DELETE http://api.loc/user/1/

Mari kita lihat bagaimana REST API diimplementasikan di PHP. Ada sedikit masalah di sini. Masalahnya adalah, baik PHP maupun CURL hanya mendukung metode GET dan POST:

<?php $method = $_SERVER['REQUEST_METHOD']; var_dump($method); // hanya GET dan POST ?>

Oleh karena itu, untuk mengimplementasikan REST API, kita harus menggunakan trik. Intinya adalah, dalam kenyataannya data akan ditransfer hanya dengan metode GET dan POST, tetapi kita akan meniru kerja metode lainnya dengan menggunakan header HTTP kustom. Sebut saja, misalnya, HTTP-X-HTTP-METHOD.

Maka kita bisa mendapatkan isi header tersebut dengan cara berikut:

<?php $method = $_SERVER['HTTP-X-HTTP-METHOD']; ?>

Sekarang kita bisa menulis implementasi API:

<?php $method = $_SERVER['HTTP-X-HTTP-METHOD']; switch ($method) { case 'GET': // ... break; case 'POST': // ... break; case 'PUT': // ... break; case 'DELETE': // ... break; } ?>

Implementasikan REST API untuk produk toko online.

Uji kerja API yang telah diimplementasikan dengan menggunakan library CURL.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak