ความแตกต่างระหว่างการรับและโพสต์ ความแตกต่างระหว่าง

Anonim

รับและโพสต์

'รับ' และ 'โพสต์' เป็นวิธี HTTP เพื่อส่งพารามิเตอร์ข้อมูลจากเบราว์เซอร์ไคลเอ็นต์ไปยังเซิร์ฟเวอร์ พารามิเตอร์เหล่านี้อาจเป็นรูปแบบการป้อนข้อมูลข้อความค้นหาจากแท็บการค้นหาเป็นต้นเมื่อใดก็ตามที่หน้าเว็บต้องตอบสนองต่อผู้ใช้หรือเราสามารถพูดได้ว่าเป็นหน้าเว็บที่ผู้ใช้โต้ตอบเว็บเหล่านี้จะมีบทบาทสำคัญ บทบาทในการจัดหาผู้ใช้ป้อนข้อมูลเฉพาะเจาะจงไปยังเซิร์ฟเวอร์ แต่คุณอาจสงสัยว่าทำไมเราต้องการสองวิธีที่แตกต่างกันเพียงเพื่อส่งข้อมูลเข้า? ในการตอบคำถามนี้เป็นสิ่งสำคัญมากที่ต้องทำความเข้าใจว่าวิธีการเหล่านี้ทำงานอย่างไรเพื่อให้คุณสามารถเข้าใจความแตกต่างได้มากขึ้น

ไวยากรณ์:

ตอนนี้ให้เราดูไวยากรณ์สำหรับ HTTP Methods Get and Post

(นี่คือไวยากรณ์สำหรับรับ)

(นี่คือไวยากรณ์สำหรับโพสต์)

ไม่มีความแตกต่างในไวยากรณ์ยกเว้นคำว่า Get หรือ Post

อินพุตถูกส่งไปยังเซิร์ฟเวอร์อย่างไร?

ข้อมูลที่ป้อนถูกเพิ่มลงใน URL ตาม '? 'ในวิธีการรับในขณะที่จะถูกส่งแยกต่างหากเป็นข้อความในโพสต์วิธี บางครั้งคุณอาจได้เห็นข้อความค้นหาของคุณใน URL หลังจากที่คุณกด Enter ถ้าไม่ลองใช้ Google ในครั้งเดียว ถ้าเป็นวิธีการรับคุณสามารถสังเกตคำค้นหาหลังจาก '? 'ใน URL เดียวกัน ในเวลาเดียวกันเราไม่สามารถอ่านข้อมูลอินพุทได้เมื่อเราใช้โพสต์ในรูปแบบแยกต่างหากและไม่ใช่ URL

ประเภทอินพุต:

ตามที่ได้รับการใส่ข้อมูลลงใน URL ควรไปในรูปแบบอักขระ ASCII โพสต์สามารถส่งข้อมูลไบนารีได้โดยไม่มีข้อ จำกัด ใด ๆ ดังนั้นโพสต์มีความยืดหยุ่นมากขึ้นสำหรับประเภทอินพุทเนื่องจากช่วยให้ทั้ง ASCII และข้อมูลไบนารีได้

การนับพารามิเตอร์:

เมธอด Get สามารถส่งเฉพาะพารามิเตอร์ที่ จำกัด เมื่อเทียบกับโพสต์ โดยปกติแล้วจะถูก จำกัด ไว้ที่หมายเลข 2K และในบางกรณีเซิร์ฟเวอร์สามารถจัดการพารามิเตอร์นับได้ถึง 64K แต่โพสต์จะมีความสามารถในการส่งไฟล์ไปยังเซิร์ฟเวอร์ในรูปแบบของข้อความ ใช่เมื่อเปรียบเทียบทั้งสองอย่างนี้เราสามารถพูดได้ว่าโพสต์ดีกว่าในการส่งการป้อนข้อมูลเป็นพารามิเตอร์มากขึ้น

ขนาดการป้อนข้อมูล:

โดยทั่วไปความยาว URL สูงสุดที่อนุญาตจะขึ้นอยู่กับเบราว์เซอร์ที่เราใช้และเว็บเซิร์ฟเวอร์ที่ประมวลผลคำขอ URL เนื่องจากรับส่งข้อมูลพร้อมกับ URL เราสามารถส่งอักขระได้สูงสุด 2,048 ตัวและในบางกรณีก็จะแตกต่างกันออกไป แต่ไม่มีข้อ จำกัด เกี่ยวกับขนาดอินพุทเมื่อเราใช้วิธีโพสต์

การมองเห็นของการป้อนข้อมูล:

หากคุณเคยทดสอบการค้นหาของ Google คุณอาจเข้าใจว่าการรับอินพุทจะปรากฏแก่ผู้อื่น เนื่องจากข้อมูลที่ป้อนจะถูกเพิ่มลงใน URL และทุกคนสามารถเห็นได้ใน URL URL แต่ถ้าโพสต์วิธีการได้รับการใช้แล้วไม่มีใครสามารถระบุสิ่งที่เราได้ส่งเป็น input หากคุณไม่สนใจเกี่ยวกับการมองเห็นข้อมูลของคุณมากนักเพียงแค่ไปที่ Get มิฉะนั้นให้ใช้โพสต์เพื่อซ่อนข้อมูลจากคนอื่น

วิธีการเริ่มต้น:

ตอนนี้คุณอาจเข้าใจวิธีที่ทั้งสองวิธีทำงานเพื่อส่งอินพุตไปยังเซิร์ฟเวอร์ เนื่องจากความเรียบง่ายในการใช้และการส่งผ่านพารามิเตอร์วิธีการเริ่มต้นของ HTTP จึงถูกเลือกให้เป็น 'รับ' แม้ว่าโพสต์จะมีข้อดีมากกว่า Get แต่จะใช้เวลาที่ง่ายกว่าในการรับค่าเริ่มต้น ดังนั้นเมื่อคุณไม่ระบุวิธีการนี้โดยเฉพาะถือว่าเป็นการขอรับ

ประวัติการเข้าชมเบราเซอร์:

วิธีการรับข้อมูลเป็นวิธีการส่งข้อมูลผ่าน URL ข้อมูลที่ส่งไปแล้วยังคงอยู่ในประวัติของเว็บเบราเซอร์ ดังนั้นทุกคนสามารถดูสิ่งที่เราได้ส่งไปยังเซิร์ฟเวอร์โดยการตรวจสอบประวัติเบราว์เซอร์ของเรา วิธีการโพสต์ไม่ได้สร้างโอกาสดังกล่าวเนื่องจากไม่อนุญาตให้เบราว์เซอร์บันทึกข้อมูล ในความเป็นจริงไม่มีอะไรเกี่ยวข้องกับเว็บเบราเซอร์เมื่อมีการส่งข้อมูลด้วยโพสต์เนื่องจากทุกสิ่งทุกอย่างถูกส่งผ่านข้อความ

มีความปลอดภัยอะไร?

เราได้วิเคราะห์ความแตกต่างระหว่างวิธีการรับและโพสต์และถึงเวลาสูงที่จะทราบว่ามีความปลอดภัยบ้าง? ให้เราดูปัจจัยด้านความปลอดภัยต่างๆเพื่อระบุตัวเดียวกัน

  • บุ๊คมาร์ค: วิธีการรับอนุญาตให้บุ๊คมาร์ค แต่ไม่อนุญาตให้โพสต์ ข้อมูลที่บุ๊กมาร์กไว้จะสามารถเห็นได้ในภายหลังโดยทุกคนและเป็นภัยคุกคามด้านความปลอดภัยอย่างยิ่ง! หากข้อมูลของคุณมีข้อมูลที่ละเอียดอ่อนมากเช่นรหัสผ่านรายละเอียดบัญชีธนาคาร ฯลฯ จากนั้น Get สามารถรั่วไหลข้อมูลทั้งหมดไปยังผู้อื่นได้ ดังนั้นจึงเป็นการดีที่จะดำเนินการกับโพสต์หากคุณจัดการกับข้อมูลที่ละเอียดอ่อน
  • การแคช: หน่วยความจำแคชเก็บข้อมูลสำหรับการดึงข้อมูลในอนาคตและในความเป็นจริงช่วยประหยัดเวลาของเรา แม้ว่าดูเหมือนว่าจะทำงานที่เป็นประโยชน์ แต่ก็มีความเป็นไปได้ที่ข้อมูลจะรั่วไหลเมื่อข้อมูลแคชหายไป Get ช่วยให้แคชในขณะที่ Post ไม่อนุญาตให้แคชเลย! ดังนั้นโพสต์จะมีความปลอดภัยมากกว่า Get
  • รีเฟรชหรือย้อนกลับ: เมื่อเราคลิกไอคอนรีเฟรชหรือกลับไอคอน URL ของเว็บเพจจะได้รับการดำเนินการอีกครั้ง แต่การดำเนินการอีกครั้งไม่ได้เกิดขึ้นเมื่อข้อมูลเก่าอยู่ในหน่วยความจำแคชของระบบของคุณ ดังนั้นในสถานการณ์ดังกล่าวมีโอกาสที่คุณจะได้รับข้อมูลที่ดึงมาจากเซิร์ฟเวอร์เมื่อรีเฟรชหรือย้อนกลับ เราควรระบุเมื่อสถานการณ์นี้เกิดขึ้นไม่ว่าจะด้วย Get หรือ Post? ตามที่เราทราบว่าแคชเกิดขึ้นกับรับและไม่ใช่กับโพสต์การเรียกข้อมูลที่เก่ากว่านั้นทำได้เฉพาะกับรับเท่านั้น แม้จะเกิดขึ้นกับโพสต์ แต่ก็ขออนุญาตจากผู้ใช้ก่อนทำเช่นนั้น ใช่เราได้รับการแจ้งเตือนก่อนการเรียกค้นดังกล่าวใน Post
  • การแฮ็ก: ทุกคนที่มีความสามารถทางเทคนิคสามารถแตก URL ที่เชื่อมโยงกับเมธอด Get และสามารถจับภาพข้อมูลของเราได้ แต่นี่เป็นไปไม่ได้ที่โพสต์และอย่างน้อยที่สุดก็ต้องใช้ความพยายามอย่างมากในการ crack! ดังนั้นเวลาส่วนใหญ่เราจึงปลอดภัยเมื่อโพสต์ถูกใช้แทนการใช้ Get

เมื่อไหร่จะใช้ Get & When to use Post?

จากการสนทนาของเราเราเห็นได้ชัดว่า Get มีความปลอดภัยน้อยกว่าและไม่ควรใช้เมื่อเราจัดการข้อมูลสำคัญมาก การแคชและประวัติเว็บเบราเซอร์สามารถให้ข้อมูลของเราแก่ผู้อื่นในกรณีของ Getแต่โพสต์ยังคงรักษาความปลอดภัยแม้ในกรณีดังกล่าวเนื่องจากไม่อนุญาตให้แคชบุ๊กมาร์ก ฯลฯ เพราะฉะนั้นจึงควรใช้โพสต์เมื่อคุณส่งข้อมูลที่มีความปลอดภัยมาก

ลองดูความแตกต่างในแบบฟอร์มที่เข้าใจได้ง่ายขึ้น

S

คำขอ HTTP

รับ

POST

1

ไวยากรณ์ ใช้คำหลัก 'get' ใช้คำว่า 'โพสต์'
2 ปัจจัยการผลิตถูกส่งไปอย่างไร? พร้อมกับการเพิ่ม URL หลังจากสัญลักษณ์ '? ' ในรูปของข้อความ
3 ประเภทอินพุต อักขระ ASCII อักขระ ASCII หรือไบนารี
4 พารามิเตอร์ที่นับ สามารถจัดการกับพารามิเตอร์ 2k ถึง 64k จากเซิร์ฟเวอร์ได้ ไม่มีขีด จำกัด
5 ขนาดการป้อนข้อมูล ใช้อักขระได้ถึง 2048 ตัว ไม่มีขีด จำกัด
6 การเปิดเผยข้อมูลที่ส่ง ยังสามารถมองเห็นได้ทั้งหมดเนื่องจากอยู่ในพื้นที่ URL ไม่สามารถมองเห็นได้เนื่องจากถูกส่งเป็นข้อความ
7 วิธีเริ่มต้นของ HTTP ใช่ ไม่
8 ประวัติเบราว์เซอร์ ข้อมูลที่ส่งจะยังคงอยู่ในประวัติเว็บเบราเซอร์และทุกคนสามารถเห็นได้ในภายหลัง ข้อมูลที่ส่งแล้ว nev er อาศัยอยู่ในประวัติเว็บเบราเซอร์และไม่มีใครสามารถเห็นได้ในภายหลัง
9 บุ๊คมาร์ค ช่วยให้ URL สามารถบุ๊กมาร์กได้และในที่สุดก็ส่งข้อมูล ไม่มีข้อมูลเกี่ยวกับข้อมูลที่ส่งถึงแม้จะมีบุ๊กมาร์กไว้ เนื่องจากหน้าบุ๊กมาร์กไม่ได้จัดเก็บข้อมูลผู้ใช้ไว้
10 การแคช เพจที่แคชเก็บข้อมูลการป้อนข้อมูลของผู้ใช้และอนุญาตให้มีการดึงข้อมูลในอนาคต หน้าแคชจะไม่เก็บข้อมูลการป้อนข้อมูลของผู้ใช้
11 รีเฟรชหรือย้อนกลับ การรีเฟรชหรือการดำเนินการกลับไม่ได้ดำเนินการคำขออีกครั้งหากการประมวลผลเก่ายังคงอยู่ภายในหน่วยความจำแคช นอกจากนี้การเรียกค้นจากแคชจะเกิดขึ้นโดยไม่มีข้อความแจ้งเตือนใด ๆ แก่ผู้ใช้ ดังนั้นผู้ใช้อาจคิดว่าเป็นเซิร์ฟเวอร์ล่าสุด แต่ในทางกลับกันเซิร์ฟเวอร์อาจมีข้อมูลอื่น การรีเฟรชหรือการกระทำกลับเรียกข้อมูลจากแคชหลังจากส่งข้อความแจ้งเตือนไปยังผู้ใช้เท่านั้น ผู้ใช้สามารถยกเลิกและสามารถเรียกใช้งานใหม่เพื่อดึงข้อมูลล่าสุดจากแคช
12 การแฮ็ก สามารถทำได้ง่าย เป็นการยากที่จะสับ
13 เมื่อใช้? เหมาะที่สุดสำหรับการส่งข้อมูลที่มีความสำคัญน้อยกว่าเช่นข้อความค้นหาข้อความแชทเนื้อหาโซเชียลมีเดียการวิจัยออนไลน์ ฯลฯ โดยที่ไม่ต้องห่วงเรื่องความปลอดภัย เหมาะที่สุดในการส่งข้อมูลที่สำคัญหลายอย่างเช่นรหัสผ่านรายละเอียดบัญชีธนาคาร ฯลฯ ที่ความกังวลด้านความปลอดภัยเป็นส่วนใหญ่

ดังนั้นเราจึงเห็นได้ชัดว่า Get and Post กำลังทำหน้าที่ส่งงานเข้าสู่เซิร์ฟเวอร์ แต่ทั้งสองทำงานแตกต่างกัน ขึ้นอยู่กับความต้องการที่เราสามารถใช้ apt HTTP วิธี i. อี รับหรือโพสต์