ในแอปพลิเคชัน B/S การโต้ตอบข้อมูลระหว่างด้านหน้าและแบ็กเอนด์จะเสร็จสมบูรณ์ผ่านแบบฟอร์มใน HTML แบบฟอร์มมีการส่งข้อมูลสองวิธี - รับและโพสต์ แม้ว่าพวกเขาจะเป็นทั้งสองวิธีในการส่งข้อมูล แต่ก็แตกต่างกันมากเมื่อส่งจริงและอาจมีผลกระทบร้ายแรงต่อข้อมูล แม้ว่าเว็บคอนเทนเนอร์ได้ปิดกั้นความแตกต่างบางอย่างระหว่างทั้งสองเพื่ออำนวยความสะดวกในการได้มาซึ่งค่าตัวแปร แต่ก็จะเป็นประโยชน์ในการทำความเข้าใจความแตกต่างระหว่างทั้งสองในการเขียนโปรแกรมในอนาคต
วิธีการรับและโพสต์ในรูปแบบสอดคล้องกับวิธีการรับและโพสต์ในโปรโตคอล HTTP ตามลำดับระหว่างการส่งข้อมูล ความแตกต่างหลักระหว่างทั้งสองมีดังนี้:
1. Get ใช้เพื่อรับข้อมูลจากเซิร์ฟเวอร์ในขณะที่โพสต์ใช้เพื่อส่งข้อมูลไปยังเซิร์ฟเวอร์
2. รับข้อมูลในแบบฟอร์มไปยัง URL ที่ชี้ไปที่การกระทำในตัวแปรฟอร์ม = ค่าและการใช้สองครั้ง "?" ในการเชื่อมต่อในขณะที่ "&" เชื่อมต่อระหว่างตัวแปรแต่ละตัว การโพสต์คือการวางข้อมูลในรูปแบบในตัวข้อมูลและส่งผ่านไปยัง URL ที่ชี้ไปที่การกระทำในวิธีที่ตัวแปรและค่าสอดคล้องกับค่า
3. Get ไม่ปลอดภัยเพราะในระหว่างกระบวนการส่งข้อมูลจะถูกวางไว้ใน URL ที่ร้องขอ ทุกวันนี้เซิร์ฟเวอร์ที่มีอยู่จำนวนมากเซิร์ฟเวอร์พร็อกซีหรือตัวแทนผู้ใช้จะบันทึก URL ที่ร้องขอลงในไฟล์บันทึกแล้ววางไว้ที่ไหนสักแห่งเพื่อให้ข้อมูลความเป็นส่วนตัวบางอย่างอาจเห็นได้จากบุคคลที่สาม นอกจากนี้ผู้ใช้ยังสามารถเห็นข้อมูลที่ส่งไปยังเบราว์เซอร์โดยตรงและข้อความระบบภายในบางข้อความจะปรากฏต่อหน้าผู้ใช้ การดำเนินการทั้งหมดของโพสต์นั้นมองไม่เห็นผู้ใช้
4. ปริมาณข้อมูลที่ส่งโดย GET มีขนาดเล็กซึ่งส่วนใหญ่เกิดจากข้อ จำกัด ของความยาว URL; และโพสต์สามารถถ่ายโอนข้อมูลจำนวนมากดังนั้นคุณสามารถใช้โพสต์เมื่ออัปโหลดไฟล์ (แน่นอนมีเหตุผลอื่นซึ่งจะกล่าวถึงในภายหลัง)
5. รับการ จำกัด ค่าของชุดข้อมูลของแบบฟอร์มที่จะเป็นอักขระ ASCII; ในขณะที่โพสต์รองรับชุดอักขระ ISO10646 ทั้งหมด
6. รับเป็นวิธีการเริ่มต้นของแบบฟอร์ม
เพื่อสรุป:
รับเมธอด: ส่งพารามิเตอร์ข้อมูลในสตริง URL เองและสามารถอ่านได้โดยตรงจากตัวแปร 'query_string' ทางฝั่งเซิร์ฟเวอร์ มันมีประสิทธิภาพ แต่ขาดความปลอดภัยและไม่สามารถประมวลผลข้อมูลที่ซับซ้อนได้
วิธีการโพสต์: ในแง่ของวิธีการส่งพารามิเตอร์จะถูกบรรจุและส่งในดาต้าแกรมและอ่านจากตัวแปรสภาพแวดล้อม content_length ซึ่งสะดวกสำหรับการส่งข้อมูลขนาดใหญ่ ในเวลาเดียวกันเนื่องจากข้อมูลไม่ได้ถูกเปิดเผยในแถบที่อยู่ของเบราว์เซอร์ความปลอดภัยค่อนข้างสูง แต่ประสิทธิภาพการประมวลผลดังกล่าวจะได้รับผลกระทบ