RESTful API ialah gaya reka bentuk API yang menggunakan protokol HTTP untuk mengendalikan data dengan konsep sumber dan kaedah HTTP. Garis panduan reka bentuknya termasuk pengenalpastian sumber yang jelas, antara muka bersatu, respons piawai, pengendalian ralat dan kawalan versi. Langkah pelaksanaan termasuk memasang rangka kerja PHP, menentukan laluan, menentukan pengawal, memproses permintaan dan membalas respons. Dalam kes sebenar, URI sumber tugas bagi aplikasi todo ialah /api/tasks, kaedahnya ialah GET, POST, PUT dan DELETE, dan pengawal bertanggungjawab untuk mengurus tugas. Contoh penggunaan menunjukkan cara mendapatkan, mencipta, mengemas kini dan memadam tugasan.
PHP RESTful API Reka Bentuk dan Pelaksanaan
Pengenalan
RESTful API (Representational State Transfer) ialah gaya reka bentuk API yang popular berdasarkan protokol HTTP. Ia menggunakan konsep sumber untuk mewakili data dan menggunakan kaedah HTTP untuk mengendalikan sumber ini.
Garis Panduan Reka Bentuk
Pelaksanaan
1. Pasang rangka kerja PHP
Sebagai contoh, anda boleh menggunakan rangka kerja PHP seperti Laravel atau Symfony, yang menyediakan sokongan terbina dalam untuk pembangunan API RESTful.
2. Tentukan laluan
Laluan memetakan permintaan HTTP kepada kaedah pengawal. Contohnya, dalam Laravel:
Route::get('/api/users', 'UserController@index'); Route::post('/api/users', 'UserController@store'); Route::put('/api/users/{user}', 'UserController@update');
3 Tentukan pengawal
Pengawal bertanggungjawab untuk mengendalikan permintaan. Contohnya, dalam Laravel:
namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController extends Controller { public function index() { return User::all(); } public function store(Request $request) { $user = User::create($request->all()); return $user; } public function update(Request $request, User $user) { $user->update($request->all()); return $user; } }
4 Mengendalikan permintaan
Kaedah pengawal mengendalikan permintaan HTTP. Contohnya, dalam Laravel:
public function index(Request $request) { $users = User::where('name', $request->name)->get(); return $users; }
5 Mengembalikan respons
Kaedah pengawal harus mengembalikan objek tindak balas. Contohnya, dalam Laravel:
return response()->json($users);
Contoh praktikal
Pertimbangkan aplikasi todo yang APInya membenarkan mengurus tugas. Sumber Tugasan s:
namespace App\Http\Controllers; use App\Task; use Illuminate\Http\Request; class TaskController extends Controller { public function index() { return Task::all(); } public function store(Request $request) { $task = Task::create($request->all()); return $task; } public function update(Request $request, Task $task) { $task->update($request->all()); return $task; } public function delete(Task $task) { $task->delete(); return response()->json(['success' => true]); } }
Untuk mencipta Baharu tugasan: GET /api/tasks
POST /api/tasks Body: { "name": "My Task" }
PUT /api/tasks/1 Body: { "name": "My Updated Task" }
Atas ialah kandungan terperinci Reka bentuk dan pelaksanaan API RESTful PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!