أساليب الطلبات HTML
- الصفحة السابقة رسالة HTTP
- الصفحة التالية الأزرار السريعة لللوحة المفاتيح
ما هو HTTP؟
بروتوكول نقل النصوص العنكبوتي (Hypertext Transfer Protocol، اختصار HTTP) مصمم لتمكين التواصل بين العميل والخادم.
يخدم HTTP كبروتوكول الطلب-الرد بين العميل والخادم.
مثال: يرسل العميل (المتصفح) طلب HTTP إلى الخادم؛ ثم يعيد الخادم الرد إلى العميل. يحتوي الرد على معلومات حول حالة الطلب، وقد يحتوي أيضًا على المحتوى المطلوب.
أساليب HTTP
- GET
- POST
- PUT
- HEAD
- DELETE
- PATCH
- OPTIONS
أكثر الطرق شيوعًا هما: GET و POST.
طريقة GET
GET يستخدم لطلب بيانات من المصدر المحدد.
GET هي أكثر طرق HTTP شيوعًا.
لاحظ أن النص المكتوب (اسم/قيمة) يتم إرساله في URL طلب GET:
/test/demo_form.php?name1=value1&name2=value2
بعض الملاحظات الأخرى حول طلبات GET:
- يمكن تخزين طلبات GET
- يتم الاحتفاظ بطلبات GET في سجل التصفح للمستخدم
- يمكن جمع طلب GET كعلامة مرجعية
- لا يجب استخدام طلب GET لمعالجة بيانات حساسة
- يوجد تحديد للطول في طلب GET
- يستخدم طلب GET فقط لاسترداد البيانات (بدون تعديل)
طريقة POST
يستخدم POST لإرسال البيانات إلى الخادم لإنشاء/تحديث المورد.
تخزن البيانات التي يتم إرسالها إلى الخادم من خلال جسم الطلب في الطلب HTTP:
POST /test/demo_form.php HTTP/1.1 Host: codew3c.com name1=value1&name2=value2
POST هي أكثر طرق HTTP شيوعًا.
بعض الملاحظات الأخرى حول طلبات POST:
- لا يتم تخزين طلبات POST
- لا يتم الاحتفاظ بطلبات POST في سجل التصفح للمستخدم
- لا يمكن جمع POST كعلامة مرجعية
- لا يوجد طلب لطول البيانات في طلب POST
طريقة PUT
يستخدم PUT لإرسال البيانات إلى الخادم لإنشاء/تحديث المورد.
الفرق بين POST وPUT يكمن في أن طلب PUT هو idempotent (مفيد مرة واحدة). أي أن تكرار استدعاء نفس طلب PUT سينتج دائمًا نفس النتيجة.على العكس من ذلك، تكرار استدعاء طلب POST له تأثيرات ثانوية لإنشاء نفس المورد عدة مرات.
طريقة HEAD
HEAD مشابه لGET تقريبًا، ولكنه لا يحتوي على جسم الرد.
بعبارة أخرى، إذا كان GET /users يعيد قائمة المستخدمين، فإن HEAD /users سيقوم بنفس الطلب، لكنه لن يعيد قائمة المستخدمين.
يكون طلب HEAD مفيدًا جدًا لفحص محتوى الطلب قبل إرسال طلب GET في الواقع (على سبيل المثال، قبل تنزيل ملف كبير أو محتوى الرد).
طريقة DELETE
يحذف طريقة DELETE المورد المحدد.
طريقة OPTIONS
يصف طريقة OPTIONS خيارات التواصل للمورد المستهدف.
مقارنة GET و POST
يقارن الجدول أدناه بين طريقتين من HTTP: GET و POST.
GET | POST | |
---|---|---|
زر السابق/التحديث | مستحسن | سيتم تقديم البيانات مرة أخرى (يجب أن يخبر المستخدم المتصفح بأن البيانات سيتم تقديمها مرة أخرى). |
علامة مرجعية | يمكن جمعه كعلامة مرجعية | لا يمكن جمعه كعلامة مرجعية |
التخزين | يمكن التخزين | لا يمكن التخزين |
نوع الترميز | application/x-www-form-urlencoded | application/x-www-form-urlencoded أو multipart/form-data. يستخدم الترميز المتعدد للبيانات الثنائية. |
التاريخ | تبقى المعلمات محفوظة في تاريخ المتصفح. | المعلمات لن تُحفظ في تاريخ المتصفح. |
تحديد طول البيانات | نعم. عند إرسال البيانات، يضيف طريقة GET البيانات إلى URL؛ طول URL محدد (أقصى طول هو 2048 حرف). | ليس هناك تحديد. |
تحديد نوع البيانات | يُسمح فقط بالحروف ASCII. | ليس هناك تحديد. يسمح أيضًا بالبيانات الثنائية. |
الأمان | من حيث الأمان، GET أقل أمانًا مقارنة بPOST لأن البيانات التي يتم إرسالها هي جزء من URL. لا تستخدم أبدًا GET عند إرسال كلمات المرور أو معلومات حساسة أخرى! |
POST أكثر أمانًا من GET لأن المعلمات لن تُحفظ في تاريخ المتصفح أو سجلات خادم الويب. |
الرؤية | البيانات مرئية للجميع في URL. | البيانات لن تظهر في URL. |
- الصفحة السابقة رسالة HTTP
- الصفحة التالية الأزرار السريعة لللوحة المفاتيح