HTTP (Hypertext Transfer Protocol) ialah protokol lapisan aplikasi yang digunakan terutamanya untuk menghantar hiperteks dan sumber lain melalui rangkaian. Ia mengikut model permintaan-tindak balas, tidak mempunyai kewarganegaraan, dan setiap permintaan adalah bebas. HTTP menggunakan format teks ringkas untuk komunikasi, termasuk pengepala permintaan dan pengepala respons. Kaedah utama HTTP termasuk GET, POST, PUT, DELETE, dll., yang digunakan untuk operasi dan tujuan yang berbeza. Melalui HTTP, pelanggan boleh meminta sumber daripada pelayan, dan pelayan memproses permintaan dan mengembalikan respons yang sepadan. Pembangunan protokol HTTP telah menggalakkan pembangunan Internet, membolehkan maklumat dihantar dan dikongsi secara global dengan cepat dan boleh dipercayai.
-
Model permintaan-tindak balas:
- Pelanggan menghantar permintaan: Pelanggan (biasanya penyemak imbas web) menghantar mesej permintaan HTTP kepada pelayan untuk meminta sumber tertentu (seperti halaman web, imej, video, dll.).
- Pelayan menghantar respons: Selepas pelayan menerima permintaan, ia memproses permintaan dan mengembalikan mesej respons HTTP, yang mengandungi sumber yang diminta atau maklumat ralat.
-
Kaedah HTTP:
- GET: digunakan untuk meminta sumber tertentu.
- POST: Digunakan untuk menghantar data ke pelayan, biasanya digunakan untuk menghantar data borang atau mencipta sumber.
- PUT: digunakan untuk mengemas kini sumber ke pelayan.
- DELETE: digunakan untuk meminta pemadaman sumber yang ditentukan.
- HEAD: Sama seperti kaedah GET, tetapi hanya mengembalikan maklumat pengepala respons, bukan kandungan sebenar.
- PILIHAN: digunakan untuk mendapatkan pilihan komunikasi yang disokong oleh pelayan.
- PATCH: digunakan untuk kemas kini separa sumber.
-
Format mesej HTTP:
Mesej HTTP terdiri daripada mesej permintaan dan mesej respons, dan mempunyai format asas berikut:
请求报文:
METHOD URL HTTP/版本头部字段1: 值1头部字段2: 值2...
响应报文:
HTTP/版本 状态码 状态消息头部字段1: 值1头部字段2: 值2...
实体数据(请求报文和响应报文中可选的实体数据)
-
Kod status HTTP:
- 1xx: Kod status maklumat, menunjukkan bahawa permintaan telah diterima dan pemprosesan diteruskan.
- 2xx: Kod status kejayaan, menunjukkan bahawa permintaan telah berjaya diproses.
- 3xx: Ubah hala kod status, menunjukkan bahawa operasi selanjutnya diperlukan untuk melengkapkan permintaan.
- 4xx: Kod status ralat pelanggan, menunjukkan bahawa permintaan itu mengandungi ralat atau tidak dapat diselesaikan.
- 5xx: Kod status ralat pelayan, menunjukkan bahawa ralat berlaku semasa pelayan memproses permintaan.
-
Ciri HTTP:
- Tanpa sambungan: Setiap kitaran permintaan-tindak balas adalah bebas antara satu sama lain dan pelayan tidak mengekalkan keadaan sambungan dengan pelanggan.
- Stateless: Pelayan tidak menyimpan keadaan sesi dengan klien, dan setiap permintaan adalah bebas, yang mengakibatkan keperluan untuk menggunakan Kuki, Sesi dan mekanisme lain untuk mengekalkan keadaan.
- Boleh Diperluas: Protokol HTTP boleh dilanjutkan dengan menambahkan medan atau kaedah pengepala baharu untuk memenuhi keperluan yang berubah-ubah.
-
Aplikasi HTTP:
- Pelayar web menggunakan protokol HTTP untuk berkomunikasi dengan pelayan web untuk mendapatkan halaman web dan sumber.
- API Web menyediakan akses kepada aplikasi melalui protokol HTTP, seperti API RESTful.
- Perkhidmatan web menggunakan protokol HTTP untuk komunikasi dan pertukaran data merentas rangkaian.
HTTP ialah protokol lapisan aplikasi model tindak balas permintaan yang digunakan untuk memindahkan hiperteks dan sumber lain antara penyemak imbas web dan pelayan web. Ia berkomunikasi dalam format teks yang mudah, menyokong pelbagai kaedah dan kod status, dan tanpa sambungan dan tanpa negara. HTTP memainkan peranan penting dalam Internet dan merupakan protokol asas untuk komunikasi Web dan pertukaran data.
Atas ialah kandungan terperinci Protokol komunikasi rangkaian-Protokol HTTP dijelaskan secara terperinci!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!