
HTTP Request
Http Requests : هي الرسائل التي يرسلها العميل أو المستخدم لبدء إجراء معين على الخادم.
التاريخ
الدروس
المستوى
اللغة
المشاهدات
المواضيع
HTTP Request
</> HTTP Request
طلبات HTTP هي الرسائل التي يرسلها العميل أو المستخدم لبدء إجراء على الخادم. يتضمن السطر الأول من الرسالة رسالة الطلب من العميل إلى الخادم ، والطريقة التي يتم تطبيقها على المورد ، ومعرف المورد ، وإصدار البروتوكول.
Syntax
Request = Request-Line *(( general-header | request-header | entity-header ) CRLF) CRLF [ message-body ]
</> Method
Method : يستخدم في تحديد الطريقة التي تم إجراؤها على المورد المحدد بواسطة Request-URI. وهي حساسة لحالة الأحرف.
ويوجد منها عدة انواع مختلفة وهم :
- GET :تقوم هذه الدالة باسترداد المعلومات من الخادم المحدد باستخدام URI محدد. يمكن طلب GET لاسترداد البيانات. لا يمكن تطبيق تأثيرات أخرى على البيانات.
- HEAD : تتطلب دالة HEAD إجابة مماثلة لطلب GET ، ولكن بدون نص الاستجابة.
- POST : يرسل طلب POST البيانات إلى الخادم. على سبيل المثال ، تحميل الملف ، ومعلومات العميل ، وما إلى ذلك باستخدام نماذج HTML.
- PUT :يتم استخدام دالة PUT لاستبدال جميع التمثيلات الحالية للمصدر المحدد بالمحتوى الذي تم تحميله.
- DELETE : تستخدم الدالة Delete لحذف جميع المحتويات الموجود في المصدر المحدد والتي تم تعيينها بواسطة عنوان URI
- CONNECT: تستخدم هذه الدالة لإنشاء نفق إلى الخادم ، والذي يتم تحديده بواسطة URI معين.
Syntax
Method = "OPTIONS" | "GET" | "HEAD" | "POST" | "PUT" | "DELETE" | "TRACE" | "CONNECT" | extension-method extension-method = token
</> Return-URI
- Request-URI هو معرف موارد موحد. يتم استخدامه لتحديد المورد الذي سيتم تطبيق الطلب بناءً عليه
بناءً على طبيعة الطلب ، تعتمد هذه الخيارات الأربعة لـ Request-URI. أ)
1) تُستخدم علامة النجمة "*" لإظهار أن الطلب لا ينطبق على مورد معين ، ولكنه ينطبق على الخادم نفسه. يُسمح به فقط عندما لا تنطبق الدالة المستخدمة بالضرورة على أحد الموارد.
2) النموذج absoluteURI : يستخدم فقط عندما يتم تقديم الطلب إلى proxy . يتم استخدام proxy المطلوب لإعادة توجيه الطلب Request وإرجاع الاستجابة Response
Request-URI = "*" | absoluteURI | abs_path | authority
</> The Resource Identified by a Request
عن طريق فحص Request-URI وحقل Host header ، يمكننا تحديد المورد المحدد بواسطة طلب الإنترنت.
يجب أن يستخدم خادم origin القواعد التالية لتحديد المورد المطلوب في طلب HTTP / 1.1 إذا كان الخادم الأصلي لا يفرق بناءً على المضيف المطلوب.
- سيكون المضيف جزءًا من Request-URI إذا كان Request-URI هو URI مطلق.
- سيتم تحديد المضيف بواسطة قيمة حقل Host header إذا لم يكن عنوان URI للطلب مطلقًا ، وكان الطلب يتضمن حقل Host header
- يجب أن تكون الاستجابة رسالة خطأ 400 (طلب غير صالح) إذا لم يكن المضيف كما هو محدد بواسطة القاعدة 1 أو 2 مضيفًا صالحًا على الخادم.
</> Request Header Fields
يتم استخدامrequest-header field s للسماح للعميل بتمرير معلومات إضافية إلى الخادم مثل الطلب والعميل نفسه.
تعمل حقول header fields كمعدِّلات للطلب ، مع دلالات مكافئة للمعلمات في استدعاء أسلوب لغة البرمجة.
Syntax
request-header = Accept | Accept-Charset | Accept-Encoding | Accept-Language | Authorization | Expect | From | Host | If-Match | If-Modified-Since | If-None-Match | If-Range | If-Unmodified-Since | Max-Forwards | Proxy-Authorization | Range | Referer | TE | User-Agent
لا يمكن تمديد اسم حقلrequest-header بشكل موثوق إلا مع تغيير في إصدار البروتوكول.