Jadi, saya melihat-lihat beberapa artikel tentang cara membuat REST API. Dan beberapa dari mereka menyarankan menggunakan semua jenis permintaan HTTP: suka PUT
DELETE
POST
GET
. Kami akan membuat misalnya index.php dan menulis API dengan cara ini:
$method = $_SERVER['REQUEST_METHOD'];
$request = split("/", substr(@$_SERVER['PATH_INFO'], 1));
switch ($method) {
case 'PUT':
....some put action....
break;
case 'POST':
....some post action....
break;
case 'GET':
....some get action....
break;
case 'DELETE':
....some delete action....
break;
}
OK, memang - saya belum tahu banyak tentang layanan web (belum). Tapi, bukankah akan lebih mudah untuk hanya menerima objek JSON melalui reguler POST
atau GET
(yang akan berisi nama metode dan semua parameter) dan kemudian merespons dalam JSON juga. Kita dapat dengan mudah membuat serial / deserialize melalui PHP json_encode()
dan json_decode()
dan melakukan apa pun yang kita inginkan dengan data itu tanpa harus berurusan dengan metode permintaan HTTP yang berbeda.
Apakah saya melewatkan sesuatu?
PEMBARUAN 1:
Ok - setelah menggali berbagai API dan belajar banyak tentang XML-RPC , JSON-RPC , SOAP , REST Saya sampai pada kesimpulan bahwa jenis API ini masuk akal. Sebenarnya pertukaran stack cukup banyak menggunakan pendekatan ini di situs mereka dan saya pikir orang-orang ini tahu apa yang mereka lakukan Stack Exchange API .