Perkhidmatan Web RESTful ialah perkhidmatan Web yang menggunakan protokol HTTP untuk komunikasi Ia ringkas, fleksibel dan mudah difahami serta boleh disokong oleh berbilang bahasa pengaturcaraan. Artikel ini akan memperkenalkan cara membuat perkhidmatan web RESTful menggunakan PHP.
1. Fahami perkhidmatan Web RESTful
Sebelum membina perkhidmatan Web RESTful, kita perlu memahami konsep asas RESTful. REST biasanya merujuk kepada Pemindahan Negeri Perwakilan (pemindahan keadaan lapisan persembahan), yang berdasarkan set kekangan dan prinsip protokol HTTP dan digunakan untuk mereka bentuk dan membangunkan perkhidmatan Web.
Perkhidmatan RESTful ialah perkhidmatan berasaskan HTTP Pelanggan mengendalikan perkhidmatan melalui kaedah permintaan HTTP, yang terutamanya merangkumi empat kaedah permintaan berikut:
Dalam perkhidmatan RESTful, sumber adalah teras perkhidmatan. Setiap sumber mempunyai beberapa pengecam (URI) yang melaluinya klien mengakses sumber dan mengendalikannya menggunakan kaedah HTTP yang sesuai.
2. Cipta perkhidmatan RESTful
Terdapat banyak rangka kerja untuk dipilih untuk mencipta perkhidmatan RESTful dalam PHP, seperti Laravel, Slim dan Lumen. Di sini kami memilih cara paling mudah untuk mencipta perkhidmatan RESTful menggunakan kaedah asli PHP.
Perkhidmatan REHAT memerlukan format data yang pelanggan boleh fahami Kami boleh menggunakan format seperti JSON atau XML. Tetapkan pengepala respons dalam PHP dan keluarkan data dalam format JSON, seperti berikut:
header("Content-Type: application/json; charset=UTF-8");
Klien berinteraksi dengan pelayan melalui permintaan GET, POST, PUT atau DELETE Kami perlu menghuraikan permintaan dan melaksanakan operasi yang sepadan pada sumber mengikut kaedah permintaan. Di sini kami menggunakan $_SERVER['REQUEST_METHOD'] untuk mendapatkan kaedah permintaan dan melaksanakan operasi yang sepadan.
jika($_SERVER['REQUEST_METHOD'] === 'DAPAT'){
//获取数据
} elseif($_SERVER['REQUEST_METHOD'] === 'POST'){
//添加数据
} elseif($_SERVER['REQUEST_METHOD'] === 'PUT'){
//更新数据
} elseif($_SERVER['REQUEST_METHOD'] === 'DELETE'){
//删除数据
}
Untuk menyimpan data dalam pangkalan data, kita perlu menggunakan sambungan PDO (PHP Data Objects) PHP. PDO menyediakan antara muka bersatu untuk menyambung ke pelbagai jenis pangkalan data dan boleh melindungi aplikasi kami daripada serangan suntikan SQL.
Sebelum menyambung ke pangkalan data, kita perlu menetapkan maklumat sambungan pangkalan data terlebih dahulu:
$host = "localhost";
$dbname = "database_name";
$username = " nama pengguna";
$kata laluan = "kata laluan";
$dsn = "mysql:host=$host;dbname=$dbname;charset=utf8";
$options = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false,
];
cuba {
$pdo = new PDO($dsn, $username, $password, $options);
} tangkap (PDOException $e) {
throw new PDOException($e->getMessage(), (int)$e->getCode());
}
Kemudian anda boleh mengendalikan pangkalan data.
Akhir sekali, kami perlu mengembalikan respons kepada pelanggan berdasarkan hasil permintaan. Dalam perkhidmatan RESTful, respons yang berjaya harus menggunakan kod status HTTP 200, manakala respons yang gagal harus menggunakan kod status HTTP yang berkaitan dengan masalah tersebut.
Respons yang berjaya:
header('HTTP/1.1 200 OK');
echo json_encode(array('message'=>'success'));
Respons gagal:
header('HTTP/1.1 404 Not Found');
echo json_encode(array('message'=>'not found'));
3. Kesimpulan
Di atas adalah proses asas menggunakan PHP untuk mencipta perkhidmatan Web RESTful boleh memperbaikinya mengikut keperluan mereka sendiri. Mencipta perkhidmatan Web RESTful memerlukan sejumlah usaha dan masa, tetapi ia boleh menyediakan perkhidmatan yang mudah, fleksibel dan berskala, memberikan idea dan arahan baharu untuk pembangunan Web.
Atas ialah kandungan terperinci Cara membuat perkhidmatan web RESTful menggunakan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!