
แท็ก ฟอร์ม ใช้สำหรับแสดงเนื้อหาของฟอร์ม สิ่งนี้เป็นที่รู้จักกันว่าการ ควบคุมรูปแบบ แบบฟอร์มเหล่านี้เต็มไปด้วยข้อมูลที่เกี่ยวข้องแล้วส่งไปยังเครื่องระยะไกลสำหรับการประมวลผลเพิ่มเติม การทำงานของแบบฟอร์มมีสองสิ่งที่สำคัญคืออดีตคือข้อกำหนดที่อยู่ของโปรแกรมซึ่งจัดการเนื้อหาของฟอร์มด้วยความช่วยเหลือของ ACTION ต่อมาเป็นข้อมูลจำเพาะวิธีการที่ข้อมูลไหลแบบฟอร์มด้วยความช่วยเหลือของ วิธีการ แอตทริบิวต์
แอ็ตทริบิวต์ ACTION อธิบายว่าจะจัดการกับฟอร์ม HTML อย่างไร คุณลักษณะวิธีการจัดการกระบวนการส่งข้อมูล วิธีการ GET และ POST อยู่ภายใต้แอตทริบิวต์วิธีการ
แผนภูมิเปรียบเทียบ
พื้นฐานสำหรับการเปรียบเทียบ | GET | โพสต์ |
---|---|---|
พารามิเตอร์จะถูกวางไว้ภายใน | URI | ร่างกาย |
วัตถุประสงค์ | การดึงเอกสาร | การอัพเดทข้อมูล |
ผลการค้นหา | ความสามารถในการถูกคั่นหน้า | ไม่สามารถคั่นหน้า |
ความปลอดภัย | ช่องโหว่ตามที่ปรากฏในข้อความธรรมดา | ปลอดภัยกว่าวิธี GET |
ข้อ จำกัด ชนิดข้อมูลแบบฟอร์ม | อนุญาตให้ใช้อักขระ ASCII เท่านั้น | ไม่มีข้อ จำกัด แม้แต่อนุญาตให้มีข้อมูลไบนารี |
ความยาวข้อมูลแบบฟอร์ม | ควรเก็บไว้ให้น้อยที่สุด | สามารถนอนในช่วงใดก็ได้ |
ความชัดเจน | ทุกคนสามารถเห็นได้ | ไม่แสดงตัวแปรใน URL |
ขนาดตัวแปร | สูงสุด 2000 ตัวอักษร | มากถึง 8 Mb |
แคช | ข้อมูลวิธีสามารถถูกแคช | ไม่แคชข้อมูล |
ความหมายของวิธีการ GET
วิธีการ GET ใช้สำหรับการร้องขอ URL จากเว็บเซิร์ฟเวอร์เพื่อดึงเอกสาร HTML มันเป็นวิธีการทั่วไปสำหรับเบราว์เซอร์ในการส่งข้อมูลซึ่งนับเป็นส่วนหนึ่งของโปรโตคอล HTTP วิธีการ GET แสดงในรูปแบบของ URL เพื่อให้สามารถคั่นหน้า GET มีการใช้อย่างกว้างขวางในเครื่องมือค้นหา หลังจากผู้ใช้ส่งแบบสอบถามไปยังเครื่องมือค้นหาแล้วเอ็นจินจะเรียกใช้คิวรีและให้หน้าผลลัพธ์ ผลการสืบค้นสามารถตั้งค่าเป็นลิงค์ (คั่นหน้า)
วิธีการ GET เปิดใช้งานการสร้างแองเคอร์ซึ่งช่วยในการเข้าถึงโปรแกรม CGI ด้วยแบบสอบถามที่ไม่ใช้รูปแบบ แบบสอบถามถูกสร้างเป็นลิงค์ดังนั้นเมื่อมีการเยี่ยมชมลิงค์โปรแกรม CGI จะดึงข้อมูลที่เหมาะสมจากฐานข้อมูล
วิธีการ GET มีปัญหาด้านความปลอดภัยเนื่องจากข้อมูลที่แทรกอยู่สามารถมองเห็นได้ใน URL ข้อมูลที่ถูก จำกัด จำนวนเท่านั้นที่สามารถส่งผ่านวิธีการ GET เนื่องจากความยาวของ URL ที่เบราว์เซอร์สามารถสำรวจได้อาจเป็นพันตัวอักษร
ปัญหาเกี่ยวกับวิธีการ GET ก็คือมันไม่สามารถจัดการกับภาษาต่างประเทศ ไม่แนะนำให้ใช้เมธอด GET แต่ยังคงมีอยู่เมื่อไม่ได้กำหนดแอททริบิวต์ของเมธอด GET จะใช้วิธีนี้เป็นค่าเริ่มต้น
ความหมายของวิธีการ POST
วิธีการ POST เหมาะสมในสภาพที่สามารถส่งข้อมูลจำนวนมากได้ เมื่อเซิร์ฟเวอร์ได้รับการร้องขอจากแบบฟอร์มที่ใช้ POST จะยังคง“ รับฟัง” สำหรับข้อมูลด้านซ้าย ในคำง่าย ๆ วิธีการถ่ายโอนข้อมูลที่เกี่ยวข้องทั้งหมดของการป้อนแบบฟอร์มทันทีหลังจากที่มีการร้องขอไปยัง URL
เมธอด POST ต้องสร้างผู้ติดต่อสองคนด้วยเว็บเซิร์ฟเวอร์ในขณะที่ GET สร้างเพียงรายเดียว คำขอใน POST ได้รับการจัดการในลักษณะเดียวกับที่ได้รับการจัดการในวิธีการ GET โดยที่ช่องว่างจะแสดงในเครื่องหมายบวก (+) และอักขระส่วนที่เหลือจะถูกเข้ารหัสในรูปแบบ URL นอกจากนี้ยังสามารถส่งรายการของไฟล์
ความแตกต่างหลักระหว่าง GET และวิธี POST ใน HTML
- วิธีการ GET วางพารามิเตอร์ภายใน URI ในขณะที่วิธีการ POST ผนวกพารามิเตอร์เข้าไปในร่างกาย
- GET ใช้เป็นหลักในการดึงข้อมูล เมื่อเทียบกับวัตถุประสงค์ของวิธีการโพสต์คือการปรับปรุงข้อมูล
- ไม่สามารถบุ๊กมาร์กผลลัพธ์การค้นหา POST ในขณะที่ผลการสืบค้น GET สามารถทำบุ๊กมาร์กได้เนื่องจากมีอยู่ในรูปแบบของ URL
- ในวิธีการ GET ข้อมูลจะปรากฏใน URL ซึ่งเพิ่มช่องโหว่และความเสี่ยงของการแฮ็ค ในทางตรงกันข้ามวิธีการโพสต์ไม่ได้แสดงตัวแปรใน URL และเทคนิคการเข้ารหัสหลายวิธีนอกจากนี้ยังสามารถใช้ในมันซึ่งทำให้มันมีความยืดหยุ่น
- เมื่อวิธีการ GET ถูกนำมาใช้ในแบบฟอร์มเพียงยอมรับตัวอักษร ASCII ในประเภทข้อมูล ในทางตรงกันข้ามวิธีการโพสต์ไม่ได้ผูกประเภทข้อมูลในรูปแบบและอนุญาตให้ไบนารีเช่นเดียวกับตัวอักษร 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 ที่มีอักขระร้อยตัวพร้อมกับข้อมูลจริงตัวอย่างเช่น //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 มีประโยชน์เมื่อผู้ใช้ต้องการกรอกรหัสผ่านหรือข้อมูลลับอื่น ๆ