Ada 5 perbedaan formulir pengiriman get post di tutorial asp. Permintaan HTTP dan formulir diperkenalkan secara terpisah. Teman-teman yang membutuhkan dapat mempelajari lima perbedaan berikut dalam formulir pengiriman get post di tutorial asp.
Ada 5 perbedaan antara metode Get dan Post
1. Get untuk memperoleh data dari server, dan post untuk mengirimkan data ke server.
2. Dapatkan menambahkan antrian data parameter ke URL yang ditunjuk oleh atribut ACTION dari formulir yang dikirimkan. Nilainya sesuai dengan setiap bidang dalam formulir satu-ke-satu dan dapat dilihat di URL. Posting menggunakan mekanisme posting HTTP untuk menempatkan setiap bidang dalam formulir dan kontennya di HTML HEADER dan mengirimkannya ke alamat URL yang ditunjukkan oleh atribut ACTION. Pengguna tidak dapat melihat proses ini.
3. Untuk metode get, sisi server menggunakan Request.QueryString untuk mendapatkan nilai variabel. Untuk metode post, sisi server menggunakan Request.Form untuk mendapatkan data yang dikirimkan.
4. Jumlah data yang ditransfer melalui get kecil dan tidak boleh lebih dari 2KB. Jumlah data yang dikirimkan melalui pos relatif besar dan umumnya tidak dibatasi secara default. Namun secara teori, jumlah maksimalnya adalah 80KB di IIS4 dan 100KB di IIS5.
5. Keamanan get sangat rendah, dan keamanan pos tinggi.
Permintaan HTTP: perbedaan antara metode GET dan POST
HTTP mendefinisikan berbagai metode interaksi dengan server, metode paling dasar adalah GET dan POST. Faktanya GET cocok untuk sebagian besar permintaan, sedangkan POST hanya dicadangkan untuk memperbarui situs. Menurut spesifikasi HTTP, GET digunakan untuk pengambilan informasi dan harus aman serta idempoten. Aman berarti operasi tersebut digunakan untuk memperoleh informasi, bukan memodifikasinya. Dengan kata lain, permintaan GET umumnya tidak memiliki efek samping. Idempoten berarti beberapa permintaan ke URL yang sama akan memberikan hasil yang sama. Definisi lengkapnya tidak seketat kelihatannya. Pada dasarnya, tujuannya adalah ketika pengguna membuka tautan, dia dapat yakin bahwa sumber daya tersebut tidak berubah dari sudut pandangnya. Misalnya, halaman depan situs berita terus diperbarui. Meskipun permintaan kedua mengembalikan kumpulan berita yang berbeda, operasi tersebut masih dianggap aman dan idempoten karena selalu mengembalikan berita terkini. sebaliknya. Permintaan POST tidaklah mudah. POST mewakili permintaan yang dapat mengubah sumber daya di server. Masih mengambil situs berita sebagai contoh, anotasi pembaca pada artikel sebaiknya diterapkan melalui permintaan POST, karena situsnya berbeda setelah anotasi dikirimkan (misalnya, anotasi muncul di bawah artikel);
Saat mengirimkan FORMULIR, jika Metode tidak ditentukan, defaultnya adalah permintaan GET, dan data yang dikirimkan dalam Formulir akan ditambahkan ke url, dipisahkan dari url dengan ?. Karakter alfanumerik dikirim apa adanya, namun spasi diubah menjadi tanda + dan simbol lainnya diubah menjadi %XX, dengan XX adalah nilai ASCII (atau ISO Latin-1) dari simbol dalam heksadesimal. Data yang dikirimkan oleh permintaan GET ditempatkan di header protokol permintaan HTTP, sedangkan data yang dikirimkan oleh POST ditempatkan di data entitas; data yang dikirimkan oleh GET hanya boleh maksimal 1024 byte, sedangkan POST tidak memiliki batasan ini.
Apa perbedaan antara menggunakan pos dan mendapatkan formulir?
Di Formulir, Anda dapat menggunakan post atau get. Itu semua adalah nilai-nilai hukum dari metode. Namun, setidaknya ada dua perbedaan dalam penggunaan metode post dan get:
1. Metode Get meneruskan input pengguna melalui permintaan URL. Metode Post mengambil bentuk lain.
2. Saat mengirimkan dalam mode Dapatkan, Anda perlu menggunakan Request.QueryString untuk mendapatkan nilai variabel. Saat mengirimkan dalam mode Posting, Anda harus mengakses konten yang dikirimkan melalui Request.Form.
Pelajari kode di bawah ini dengan cermat. Anda dapat menjalankannya untuk merasakannya:
kode
Berikut isi kutipannya:
<!--Satu-satunya perbedaan antara kedua Formulir adalah atribut Metode-->
Copy kode kodenya sebagai berikut:
<FORM ACTION=getpost.php tutorial METODE=dapatkan>
<INPUT TYPE=teks NAMA=Teks VALUE=Halo Dunia></INPUT>
<INPUT TYPE=kirim VALUE=Metode=Dapatkan></INPUT>
</BENTUK>
<BR>
<FORMULIR TINDAKAN=getpost.php METODE=posting>
<INPUT TYPE=teks NAMA=Teks VALUE=Halo Dunia></INPUT>
<INPUT TYPE=kirim VALUE=Metode=Posting></INPUT>
</BENTUK>
<?Jika Permintaan.QueryString(Teks) <> Lalu ?>
String yang diteruskan melalui metode get adalah: <B><?= Request.QueryString(Text) ?></B><BR>
<? Berakhir Jika ?>
<?Jika Permintaan.Formulir(Teks) <> Lalu ?>
String yang dilewatkan melalui metode Post adalah: <B><?= Request.Form(Text) ?></B><BR>
<? Berakhir Jika ?>
menjelaskan
Simpan kode di atas sebagai getpost.asp, lalu jalankan. Uji dulu metode posting. Saat ini, URL browser tidak berubah, dan hasil yang dikembalikan adalah:
String yang melewati metode Post adalah: Hello World
Kemudian tes dikirimkan menggunakan metode get. Perlu diketahui bahwa url browser menjadi:
http://localhost/general/form/getpost.php?Text=Halo+Dunia
Dan hasil yang dikembalikan adalah :
String yang melewati metode get adalah: Hello World
Terakhir submit melalui metode post, dan url browsernya tetap:
http://localhost/general/form/getpost.php?Text=Halo+Dunia
Dan hasil yang dikembalikan menjadi :
String yang melewati metode get adalah: Hello World
String yang melewati metode Post adalah: Hello World
petunjuk
Mengirimkan data melalui metode get dapat menyebabkan masalah keamanan. Misalnya, halaman arahan. Saat mengirimkan data melalui metode get, nama pengguna dan kata sandi akan muncul di URL. jika:
1. Halaman login dapat di-cache oleh browser;
2. Orang lain dapat mengakses mesin pelanggan.
Kemudian, orang lain dapat membaca nomor rekening dan kata sandi pelanggan dari riwayat browser. Oleh karena itu, dalam beberapa kasus, metode get dapat menyebabkan masalah keamanan yang serius.
saran
Pada Form disarankan menggunakan metode post.