ความแตกต่างระหว่างวิธี GET และ POST ในรูปแบบ HTML
เนื้อหา
- แผนภูมิเปรียบเทียบ
- ความหมายของวิธีการ GET
- ความหมายของวิธีการ POST
ตัวอย่างของ GET- ตัวอย่างของ POST
- ข้อสรุป
GET และ POST เป็นเทคนิคที่มีประสิทธิภาพสองวิธีที่สามารถส่งข้อมูลไปยังเซิร์ฟเวอร์และเบราว์เซอร์จำเป็นต้องใช้สิ่งเหล่านี้เพื่อสื่อสารกับเซิร์ฟเวอร์ ทั้งสองวิธีมีความแตกต่างที่วิธีการ GET เพิ่มข้อมูลที่เข้ารหัสไปยัง URI ในขณะที่ในกรณีของวิธีการโพสต์ข้อมูลจะถูกผนวกเข้ากับร่างกายมากกว่า URI นอกจากนี้ยังใช้วิธีการ GET เพื่อดึงข้อมูล ตรงกันข้ามวิธีการโพสต์จะใช้สำหรับการจัดเก็บหรือปรับปรุงข้อมูล
ฟอร์ม แท็กใช้สำหรับแสดงเนื้อหาของแบบฟอร์ม นี้เป็นที่รู้จักกันว่า การควบคุมรูปแบบ. แบบฟอร์มเหล่านี้เต็มไปด้วยข้อมูลที่เกี่ยวข้องแล้วส่งไปยังเครื่องระยะไกลสำหรับการประมวลผลเพิ่มเติม การทำงานของแบบฟอร์มมีสองสิ่งที่สำคัญคืออดีตคือข้อกำหนดที่อยู่ของโปรแกรมซึ่งจัดการเนื้อหาของฟอร์มด้วยความช่วยเหลือของ ACTION. ต่อมาเป็นข้อกำหนดวิธีการที่ข้อมูลไหลแบบฟอร์มด้วยความช่วยเหลือของ วิธี คุณลักษณะ
แอ็ตทริบิวต์ ACTION อธิบายว่าจะจัดการกับฟอร์ม HTML อย่างไร คุณลักษณะวิธีการจัดการกระบวนการส่งข้อมูล วิธีการ GET และ POST อยู่ภายใต้แอตทริบิวต์วิธีการ
-
- แผนภูมิเปรียบเทียบ
- คำนิยาม
- ความแตกต่างที่สำคัญ
- ตัวอย่าง
- ข้อสรุป
แผนภูมิเปรียบเทียบ
พื้นฐานสำหรับการเปรียบเทียบ | GET | โพสต์ |
---|---|---|
พารามิเตอร์จะถูกวางไว้ภายใน | URI | ร่างกาย |
วัตถุประสงค์ | การดึงเอกสาร | การอัพเดทข้อมูล |
ผลการค้นหา | ความสามารถในการถูกคั่นหน้า | ไม่สามารถคั่นหน้า |
ความปลอดภัย | ช่องโหว่เช่นในปัจจุบันเป็นธรรมดา | ปลอดภัยกว่าวิธี GET |
ข้อ จำกัด ชนิดข้อมูลแบบฟอร์ม | อนุญาตให้ใช้อักขระ ASCII เท่านั้น | ไม่มีข้อ จำกัด แม้แต่อนุญาตให้ใช้ข้อมูลไบนารี |
ความยาวข้อมูลแบบฟอร์ม | ควรเก็บไว้ให้น้อยที่สุด | สามารถนอนในช่วงใดก็ได้ |
ความชัดเจน | ทุกคนสามารถเห็นได้ | ไม่แสดงตัวแปรใน URL |
ขนาดตัวแปร | สูงสุด 2000 ตัวอักษร | มากถึง 8 Mb |
แคช | ข้อมูลวิธีสามารถถูกแคช | ไม่แคชข้อมูล |
ความหมายของวิธีการ GET
รับวิธี ใช้สำหรับขอ URL จากเว็บเซิร์ฟเวอร์เพื่อดึงเอกสาร HTML มันเป็นวิธีการทั่วไปสำหรับเบราว์เซอร์ในการส่งข้อมูลซึ่งนับเป็นส่วนหนึ่งของโปรโตคอล HTTP วิธีการ GET แสดงในรูปแบบของ URL เพื่อให้สามารถคั่นหน้า GET มีการใช้อย่างกว้างขวางในเครื่องมือค้นหา หลังจากผู้ใช้ส่งแบบสอบถามไปยังเครื่องมือค้นหาแล้วเอ็นจินจะเรียกใช้คิวรีและให้หน้าผลลัพธ์ ผลการสืบค้นสามารถตั้งค่าเป็นลิงค์ (คั่นหน้า)
วิธีการ GET เปิดใช้งานการสร้างแองเคอร์ซึ่งช่วยในการเข้าถึงโปรแกรม CGI ด้วยแบบสอบถามโดยไม่ใช้รูปแบบ แบบสอบถามถูกสร้างเป็นลิงก์ดังนั้นเมื่อมีการเยี่ยมชมลิงค์โปรแกรม CGI จะดึงข้อมูลที่เหมาะสมจากฐานข้อมูล
วิธีการ GET มีปัญหาด้านความปลอดภัยเนื่องจากข้อมูลที่แทรกอยู่สามารถมองเห็นได้ใน URL ข้อมูลที่ถูก จำกัด จำนวนเท่านั้นที่สามารถส่งผ่านวิธีการ GET เนื่องจากความยาวของ URL ที่เบราว์เซอร์สามารถสำรวจได้อาจเป็นพันตัวอักษร
ปัญหาเกี่ยวกับวิธีการ GET ก็คือมันไม่สามารถจัดการกับภาษาต่างประเทศ ไม่แนะนำให้ใช้เมธอด GET แต่ยังคงอยู่เมื่อไม่ได้กำหนดแอททริบิวต์ของเมธอด GET จะใช้เป็นค่าเริ่มต้น
ความหมายของวิธีการ POST
โพสต์ วิธีการนี้เหมาะสมในสภาพที่สามารถส่งผ่านข้อมูลจำนวนมากได้ เมื่อเซิร์ฟเวอร์ได้รับการร้องขอจากแบบฟอร์มที่ใช้ POST จะยังคง“ รับฟัง” สำหรับข้อมูลด้านซ้าย ในคำง่าย ๆ วิธีการถ่ายโอนข้อมูลที่เกี่ยวข้องทั้งหมดของการป้อนแบบฟอร์มทันทีหลังจากที่มีการร้องขอไปยัง URL
เมธอด POST ต้องสร้างผู้ติดต่อสองคนด้วยเว็บเซิร์ฟเวอร์ในขณะที่ GET สร้างเพียงรายเดียว คำขอใน POST ได้รับการจัดการในลักษณะเดียวกับที่ได้รับการจัดการในวิธีการ GET โดยที่ช่องว่างจะแสดงในเครื่องหมายบวก (+) และอักขระส่วนที่เหลือจะถูกเข้ารหัสในรูปแบบ URL นอกจากนี้ยังสามารถรายการของไฟล์
- วิธีการ GET วางพารามิเตอร์ภายใน URI ในขณะที่วิธีการ POST ผนวกพารามิเตอร์เข้าไปในร่างกาย
- GET ใช้เป็นหลักในการดึงข้อมูล เมื่อเทียบกับวัตถุประสงค์ของวิธีการ POST คือการปรับปรุงข้อมูล
- ไม่สามารถบุ๊กมาร์กผลลัพธ์การค้นหา POST ได้ในขณะที่ผลการสืบค้น GET สามารถทำบุ๊กมาร์กได้เนื่องจากมีอยู่ในรูปแบบของ URL
- ในวิธีการ GET ข้อมูลจะปรากฏใน URL ซึ่งเพิ่มช่องโหว่และความเสี่ยงของการแฮ็ค ในทางตรงกันข้ามวิธีการโพสต์ไม่ได้แสดงตัวแปรใน URL และเทคนิคการเข้ารหัสหลายวิธีนอกจากนี้ยังสามารถใช้ในมันซึ่งทำให้มันมีความยืดหยุ่น
- เมื่อวิธีการ GET ถูกนำมาใช้ในรูปแบบเพียงยอมรับตัวอักษร ASCII ในประเภทข้อมูล ในทางตรงกันข้ามวิธีการ POST ไม่ได้ผูกประเภทข้อมูลในรูปแบบและอนุญาตให้ไบนารีเช่นเดียวกับตัวอักษร ASCII
- ขนาดตัวแปรในวิธีการ GET คือประมาณ 2,000 ตัวอักษร ตรงกันข้ามวิธี POST อนุญาตให้มีขนาดตัวแปรสูงสุด 8 Mb
- ข้อมูลวิธีการ GET สามารถแคชได้ในขณะที่ข้อมูลของวิธีการ POST ไม่ได้
ตัวอย่างของ GET
เมื่อผู้ใช้ป้อน URL ใด ๆ ในแถบตำแหน่งของเบราว์เซอร์เช่น http // www.example.com / xyz / file1.htm. ที่อยู่จะถูกแปลงเป็นคำขอ HTTP GET ที่ถูกต้องตัวอย่างเช่น GET / xyz / file1.htm HTTP / 1.0.
คำขอนี้จะถูกโอนไปยังเซิร์ฟเวอร์ www.example.com. คำขอจะขอให้ file1.htm ใน xyzไดเรกทอรีและไม่ว่าจะเชื่อมต่อกับภาษา 1.0 ของ HTTP ที่นี่ผู้ใช้จะไม่ได้รับไฟล์ด้วยตัวเองหลังจากส่งไฟล์ในความเป็นจริงโปรแกรมกำลังทำงานในพื้นหลังเพื่อจัดการข้อมูลแบบฟอร์ม
ผู้ใช้ต้องผ่านข้อมูลแบบฟอร์มด้วยชื่อของโปรแกรมสำหรับการดำเนินการ เพื่อให้การดำเนินการบรรลุผลสำเร็จข้อมูลในฟอร์มจะถูกผนวกเข้ากับ URL ที่ร้องขอ มันสร้าง URL ที่มีร้อยตัวพร้อมกับข้อมูลจริงเช่น http://www.example.com/cgi-x/comments.exe?Name=AI+Alena&Age=23&Gender=female.
ตัวอย่างของ POST
ข้อมูลที่ส่งมาจากแบบฟอร์มอาจปรากฏขึ้นเช่น ชื่อ = AI + Alena และอายุ = 23 และเพศหญิง =. โปรแกรมจัดการข้อมูลโดยแบ่งพาร์ติชันข้อมูล ข้อมูลในฟอร์มสามารถเข้ารหัสต่างกันโดยใช้ ENCTYPE คุณลักษณะในวิธีการ POST
เนื้อหาแบบฟอร์มมักจะไม่เห็นใน URL และข้อได้เปรียบหลักคือสามารถส่งข้อมูลจำนวนมากโดยใช้วิธีการ POST
ข้อสรุป
วิธีการ GET และ POST ใช้สำหรับการนำข้อมูลไปยังเซิร์ฟเวอร์และความแตกต่างที่สำคัญระหว่างวิธีการนั้นคือวิธีการ GET ต่อท้ายข้อมูลไปยัง URI ที่กำหนดไว้ในแอตทริบิวต์การกระทำของแบบฟอร์ม ตรงกันข้ามวิธีการโพสต์แนบข้อมูลไปยังร่างกายที่ร้องขอ การใช้วิธีการ GET นั้นไม่เหมาะสมเมื่อจำเป็นต้องกรอกข้อมูลที่ละเอียดอ่อนในแบบฟอร์ม วิธีการ POST มีประโยชน์เมื่อผู้ใช้ต้องการกรอกรหัสผ่านหรือข้อมูลลับอื่น ๆ