HTTP Status Codes
أكواد حالة HTTP
أكواد حالة HTTP
التاريخ
الدروس
المستوى
اللغة
المشاهدات
المواضيع
الشروحات chevron_left HTTP Status Codes chevron_left Web Technology
HTTP Status Codes
أكواد حالة HTTP
</>
HTTP Status Codes
أكواد حالة HTTP
تُعتبر أكواد الحالة HTTP status codes في بروتوكول HTTP أداة مهمة في التواصل بين الخادم والمستخدم عبر الإنترنت، حيث ترد الخوادم بهذه الأكواد على طلبات المستخدم user requests، تتألف الأكواد من ثلاثة أرقام يُحدد الرقم الأول منها فئة الاستجابة response التي تشير إلى التصنيف العام الذي يندرج تحته كود الحالة status code في بروتوكول HTTP، حيث تقدم كل فئة معلومات حول نوع الاستجابة response التي يقدمها الخادم للطلب.
على سبيل المثال، الأكواد التي تبدأ بالرقم 1 تشير إلى معلومات أولية، والأكواد التي تبدأ بالرقم 2 تشير إلى نجاح العملية، والأكواد التي تبدأ بالرقم 3 تتعلق بإعادة التوجيه، والأكواد التي تبدأ بالرقم 4 تدل على خطأ من جهة العميل، بينما تشير الأكواد التي تبدأ بالرقم 5 إلى خطأ من جهة الخادم، تستخدم الأكواد لتوضيح حالة الطلب، سواء كان ناجحًا أو يتطلب حل مشكلة.
</>
HTTP Status code components
مكونات كود الحالة HTTP
أكواد الحالة status codes تتكون من ثلاثة أرقام، وتشكّل هذه الأرقام معًا كودًا واحدًا يشير إلى حالة معينة.
الرقم الأول First Number
يحدد فئة الاستجابة response category وهو مؤشر رئيسي على نوع الاستجابة response type التي يقدمها الخادم. هناك خمس فئات رئيسية يتم تمثيلها بالأرقام من 1 إلى 5، كما يلي:
- Informational Responses 1xx الاستجابات المعلوماتية: تشير إلى أن الطلب قيد الاستلام والمعالجة.
- Successful Responses 2xx الاستجابات الناجحة: تعني أن الطلب قد نجح وتمت معالجته بشكل صحيح.
- Redirection Messages 3xx رسائل إعادة التوجيه: تدل على أن التحميل يحتاج إلى إجراء إضافي، مثل الانتقال لموقع آخر.
- Client Errors Responses 4xx استجابات أخطاء العميل: تشير إلى خطأ من المستخدم، مثل طلب غير موجود.
- Server Errors Responses 5xx استجابات أخطاء الخادم: تدل على أن الخادم فشل في تنفيذ الطلب.
الرقمان الأخيران Fast Two Number
لا يتم استخدام الرقمان الأخيران في عملية التصنيف، ولكنهما يحددان الحالة الدقيقة ضمن الفئة العامة التي يشير إليها الرقم الأول، كل كود من أكواد الحالة يتألف عادة من استجابة فريدة تشرح بشكل أكثر تحديدًا طبيعة الطلب أو المشكلة.
</>
HTTP Codes In Informational Responses
الاستجابات المعلوماتية في HTTP Codes
تتكون استجابة informational responses عادةً من سطر حالة HTTP status line، ورأس header، وتنتهي بسطر فارغ، وتُستخدم هذه الأكواد فقط في الإصدار HTTP/1.1 وليست مدعومة في الإصدار السابق HTTP/1.0، ولذلك، يجب على الخوادم ألا ترد بكود 1xx على طلبات من عملاء يستخدمون HTTP/1.0، بما أن أكواد HTTP 1xx تُعتبر فقط لأغراض معلوماتية، فإن المتصفحات والوكلاء المستخدمَة لن تقوم بمعالجة أو عرض هذه الأكواد على الشاشة الأمامية مثل ما تفعل مع فئات الأكواد الأخرى، بل تجاهلها المتصفحات وتستمر في معالجة الأجزاء المتبقية من الطلبات.
هناك أربعة أكواد فقط تستخدم في سلسلة 1xx وهي عبارة عن إشارات معلوماتية لتوجيه عملية الاتصال وهذا يُساعد في تحسين التفاعل بين الخادم والعميل أثناء معالجة الطلبات.
أكواد HTTP الخاصة بالاستجابات المعلوماتية Informational Responses
- متابعة 100 Continue: يشير إلى أن الخادم تلقى الجزء الأول من الطلب وعلى العميل متابعة إرسال باقي البيانات.
- بروتوكولات التبديل 101 Switching Protocols: يعني أن الخادم يوافق على تغيير البروتوكول بناءً على طلب العميل للاستفادة من إمكانيات مختلفة مثل التحويل من HTTP إلى Web Socket.
- المعالجة 102 Processing: يدل على أن الخادم يستغرق وقتًا أطول لمعالجة الطلب والذي يحتاج إلى عمليات أطول قبل الوصول إلى استجابة نهائية.
- تلميحات مبكرة 103 Early Hints: يوفر للعملاء تلميحات مبكرة عن الموارد التي يمكن جلبها بشكل مسبق قبل أن يتم الحصول على الاستجابة النهائية للطلب.
</>
100 Continue
متابعة 100
كود الحالة 100 Continue في بروتوكول HTTP يُستخدم كإشارة مؤقتة في عملية الاتصال بين العميل والخادم، حيث يُفيد بأن الجزء الأول من الطلب قد تم استقباله بشكل صحيح وأنه يجب على العميل الاستمرار في إرسال باقي البيانات.
هذه الاستجابة تُعزز من فعالية الاتصال خاصة عند التعامل مع بيانات كبيرة أو معقدة، إذ تُمكن من تجنب إرسال محتوى كامل إذا كان هناك خطأ في الجزء الأول من الطلب، من خلال استخدام كود 100 Continue يضمن الخادم كفاءة عمليات نقل البيانات وتقليل وقت الانتظار، مما يُحسن من أداء تطبيقات الويب ويوفر تجربة سلسة للمستخدمين.
The Status
نمط كود الحالة 100 Continue
100 Continue
100 Request from client to server using continue
يطلب العميل تأكيد من الخادم باستخدام الكود 100 continue قبل تحميل ملف كبير بالكامل.
POST /upload HTTP/1.1 Host: www.example.com Content-Length: 10256423 Expect: 100-continue
Server response to the client
تُشير الاستجابة response إلى أن الخادم استلم جزء من الطلب ويأذن للعميل بمواصلة إرسال باقي البيانات.
HTTP/1.1 100 Continue
</>
Switching Protocols 101
بروتوكولات التبديل 101
ملحوظة
The Status
نمط كود الحالة 101 Switching Protocols
101 Switching Protocols
Request from Client to Server Using Switching Protocols 101
عندما يريد العميل التبديل من HTTP إلى WebSocket، يُرسل طلبًا يحتوي على تفاصيل التبديل في رأس الطلب.
GET /chat HTTP/1.1 Host: example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ== Sec-WebSocket-Version: 13
Server response to the client
إذا كان الخادم يدعم WebSocket ويرغب في ترقية الاتصال، فإنه يرد برمز الحالة 101 Switching Protocols.
HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
</>
Processing 102
المعالجة 102
The Status
نمط كود الحالة 102 Processing
102 Processing
Request from client to server using switching protocols 102
يستخدم الخادم كود 102 Processing لإبلاغ العميل بأن طلب البحث المعقد قيد المعالجة لمنع انقضاء المهلة.
```http POST /search HTTP/1.1 Host: example.com Content-Type: application/json Content-Length: 150 { "query": "search term", "filters": { "date": "2023-01-01", "category": "technology" } }
Title Example of HTTP Processing Response 102
الرمز HTTP 102 Processing يشير إلى أن الخادم قد استلم الطلب ويقوم بمعالجته حاليًا لمنع انقضاء المهلة.
HTTP/1.1 102 Processing
Example of HTTP 200 OK Response with JSON Search Results
استجابة HTTP 200 OK تعرض نتائج بحث بنجاح، مضمنة تفاصيل وعناوين المقالات بصيغة JSON.
HTTP/1.1 200 OK Content-Type: application/json Content-Length: 300 { "status": "success", "results": [ { "title": "Latest Technology Trends", "link": "https://example.com/articles/1", "snippet": "Explore the latest technology trends for 2023..." }, { "title": "AI Innovations", "link": "https://example.com/articles/2", "snippet": "Discover the innovations in AI for the new year..." } ] }
</>
Early Hints 103
تلميحات مبكرة 103
يهدف 103 Early Hints إلى تسريع عملية تحميل الصفحات عبر الإنترنت، مما يوفر للمستخدم تجربة أكثر سلاسة وأقل زمنًا لعرض المحتوى. تعتمد فعالية هذه التقنية على التنسيق الجيد بين الخوادم والمتصفحات، حيث تتيح التحميل المسبق للعناصر المطلوبة، مما يعزز الأداء ويحقق تكاملًا سلسًا في عملية الاتصال الشبكي.
The Status
نمط كود الحالة Early Hints 103
103 Early Hints