Perbezaan: 1. Permintaan siaran adalah lebih selamat; permintaan siaran tidak akan digunakan sebagai sebahagian daripada URL, tidak akan dicache, dan tidak akan disimpan dalam log pelayan dan rekod penyemakan imbas sumber statik, ia akan Cache, jika ia adalah data, ia tidak akan dicache. 2. Data yang dihantar oleh permintaan pos adalah lebih besar, dan permintaan dapatkan mempunyai had panjang URL. 3. Permintaan pos boleh menghantar lebih banyak jenis data, manakala permintaan get hanya boleh menghantar aksara ASCII. 4. Kaedah penghantaran parameter adalah berbeza. 5. Dapatkan menjana satu paket TCP;
Persekitaran pengendalian tutorial ini: sistem Windows 10, komputer Dell G3.
Dapatkan permintaan: Minta data daripada sumber tertentu, digunakan untuk mendapatkan data, biasanya digunakan untuk operasi seperti pengisihan dan penapisan carian.
Permintaan pos: Serahkan data untuk diproses ke sumber yang ditentukan, digunakan untuk menghantar data ke pelayan, biasanya digunakan untuk mengubah suai dan menulis data.
Dapatkan permintaan dan kirimkan permintaan pada asasnya adalah pautan TCP, tiada perbezaan. Walau bagaimanapun, disebabkan oleh peraturan HTTP dan had penyemak imbas/pelayan, ia menunjukkan beberapa perbezaan dalam proses permohonan.
Perbezaan antara permintaan pos dan permintaan dapatkan
(1) permintaan pos lebih selamat (tidak akan menjadi sebahagian daripada url dan akan tidak dicache , disimpan dalam log pelayan dan rekod penyemakan imbas Jika permintaan get adalah sumber statik, ia akan dicache jika ia adalah data, ia tidak akan dicache)
(2) Data yang dihantar. oleh permintaan pos lebih besar ( Permintaan dapatkan mempunyai had panjang URL, protokol http sendiri tidak mengehadkan had panjang permintaan ditentukan dan ditetapkan oleh penyemak imbas dan pelayan web)
(3) Permintaan siaran boleh menghantar lebih banyak jenis data (dapat permintaan hanya boleh Hantar aksara ASCII)
(4) Kaedah lulus parameter adalah berbeza (mendapatkan parameter permintaan dihantar melalui url, dan permintaan pos dihantar dalam badan permintaan)
(5) Permintaan dapatkan menjana paket TCP ; Permintaan pos menjana dua paket data TCP (dapatkan permintaan, penyemak imbas akan menghantar pengepala http dan data bersama-sama, pelayan membalas dengan 200 untuk mengembalikan data; permintaan pos , penyemak imbas menghantar pengepala terlebih dahulu, pelayan membalas dengan 100 teruskan, dan penyemak imbas kemudian menghantar data, pelayan membalas dengan 200 dan mengembalikan data)
Nota: Tiada pengepala Jangkakan semasa menghantar POST, dan pelayan secara semula jadi tidak akan menghantar 100 terus.
Proses permintaan pos:
(1) Penyemak imbas meminta sambungan tcp (jabat tangan pertama)
( 2) Pelayan bersetuju untuk membuat sambungan TCP (jabat tangan kedua)
(3) Penyemak imbas mengesahkan dan menghantar pengepala permintaan pos (jabat tangan ketiga, mesej ini agak kecil, jadi http akan diproses pada masa ini Data pertama dihantar)
(4) Pelayan mengembalikan respons 100 Teruskan
(5) Penyemak imbas menghantar data
(6) Pelayan mengembalikan respons 200 OK
Proses mendapatkan permintaan:
(1) Penyemak imbas meminta sambungan tcp (jabat tangan pertama)
(2) Pelayan Setuju dengan sambungan TCP (jabat tangan kedua)
(3) Penyemak imbas mengesahkan dan menghantar pengepala permintaan dan data (jabat tangan ketiga, mesej ini agak kecil, jadi http akan melakukan jabat tangan ketiga pada masa ini Data dihantar sekali)
(4) Pelayan mengembalikan respons 200 OK
Apabila persekitaran rangkaian baik, perbezaan masa antara menghantar paket sekali dan menghantar dua paket pada dasarnya boleh diabaikan. Dalam kes persekitaran rangkaian yang lemah, TCP dengan dua paket mempunyai kelebihan besar dalam mengesahkan integriti paket data.
Untuk lebih banyak pengetahuan berkaitan, sila lawati ruangan Soalan Lazim!
Atas ialah kandungan terperinci Apakah perbezaan antara pos dan dapatkan permintaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!