⊗ppSpAiRs 52 of 83 menu

REST API dalam PHP

Terdapat pendekatan khas, yang menyeragamkan API untuk kemudahan bersama kedua-dua pembangun API, dan penggunanya.

Salah satu pendekatan tersebut ialah REST API. Asasnya terletak pada idea bahawa untuk operasi CRUD, perlu menggunakan pelbagai kaedah protokol HTTP.

Untuk mendapatkan data - kaedah GET, untuk mencipta data - kaedah POST, untuk mengubah data - kaedah PUT, untuk memadam data - kaedah DELETE.

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

Dapatkan semua pengguna:

GET http://api.loc/users/

Dapatkan satu pengguna mengikuti idnya:

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

Cipta pengguna:

POST http://api.loc/user/

Ubah pengguna mengikut idnya:

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

Padam pengguna mengikut idnya:

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

Mari kita lihat, bagaimana REST API dilaksanakan dalam PHP. Terdapat sedikit masalah di sini. Masalahnya ialah, kedua-dua PHP dan CURL hanya menyokong kaedah GET dan POST:

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

Oleh itu, untuk melaksanakan REST API, kita terpaksa menggunakan helah. Intipatinya ialah, dalam realiti data akan dihantar hanya menggunakan kaedah GET dan POST, tetapi kita akan mengimitasi kerja kaedah lain menggunakan pengepala HTTP khas. Kita namakannya, sebagai contoh, HTTP-X-HTTP-METHOD.

Maka kita boleh mendapatkan kandungan pengepala ini seperti berikut:

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

Sekarang kita boleh menulis pelaksanaan API:

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

Laksanakan REST API untuk produk kedai dalam talian.

Uji kerja API yang telah dilaksanakan menggunakan pustaka CURL.

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