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: يوفر للعملاء تلميحات مبكرة عن الموارد التي يمكن جلبها بشكل مسبق قبل أن يتم الحصول على الاستجابة النهائية للطلب.
</>
HTTP 100 Continue
متابعة HTTP 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
</>
HTTP 101 Switching Protocols
بروتوكولات التبديل HTTP 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=
ملحوظة
</>
HTTP 102 Processing
المعالجة HTTP 102
The Status
نمط كود الحالة 102 Processing
102 Processing
Request from client to server using switching protocols 102
يستخدم الخادم كود 102 Processing لإبلاغ العميل بأن طلب البحث المعقد قيد المعالجة لمنع انقضاء المهلة.
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..." } ] }
</>
HTTP 103 Early Hints
تلميحات مبكرة HTTP 103
يهدف الكود 103 Early Hints إلى تسريع عملية تحميل الصفحات عبر الإنترنت، مما يوفر للمستخدم تجربة أكثر سلاسة وأقل زمنًا لعرض المحتوى، تعتمد فعالية هذه التقنية على التنسيق الجيد بين الخوادم والمتصفحات، حيث تتيح التحميل المسبق للعناصر المطلوبة، مما يعزز الأداء ويحقق تكاملًا سلسًا في عملية الاتصال الشبكي.
The Status
نمط كود الحالة Early Hints 103
103 Early Hints
Preconnect example
استجابة 103 Early Hint توصي بـ "rel=preconnect" لـ [https://assets.example.net] لتحسين التحميل.
HTTP/1.1 103 Early Hint Link: <https://assets.example.net>; rel=preconnect, <https://assets.example.net>; rel=preconnect; crossorigin
هذا المثال يتصل مسبقًا بـ https://assets.example.net مرتين:
- الاتصال الأول سيكون لتحميل الموارد التي يمكن جلبها بدون CORS، مثل مقاطع الفيديو.
- الاتصال الثاني يتضمن سمة "crossorigin" وسيكون لتحميل الموارد المحمية بالـ CORS، مثل الصور.
يجب جلب الموارد المحمية عبر CORS عبر اتصال منفصل تمامًا، إذا كنت بحاجة فقط إلى نوع واحد من الموارد من أصل، فإنك تحتاج إلى الاتصال المسبق مرة واحدة فقط.
Final Response for Secure Font and Image Loading via CORS
يرسل الخادم الاستجابة النهائية التي تشمل تحميل خط آمن مع crossorigin وصورة من الأصل الإضافي.
HTTP/1.1 200 OK Content-Type: text/html <!DOCTYPE html> <link rel="preload" href="https://assets.example.net/fonts/custom-font.woff2" as="font" type="font/woff2" crossorigin> <img src="https://assets.example.net/photos/sample.jpg" alt="">
Preload example
تشير استجابة 103 Early Hints إلى أنه قد يكون هناك حاجة إلى تحميل مسبق لملف جافا سكريبت "app.js".
HTTP/1.1 103 Early Hint Link: </scripts/app.js>; rel=preload; as=script
Final response with preloaded JavaScript app loaded
الخادم يرسل استجابة نهائية تتضمن تحميل تطبيق جافا سكريبت المحمّل مسبقًا من التلميحات المبكرة.
HTTP/1.1 200 OK Content-Type: text/html <!doctype html> <script src="/scripts/app.js" rel="preload"></script>
Early hint response with CSP
في هذا المثال، تظهر نفس استجابة Early Hints مع تضمين رأس سياسة أمان المحتوى [Content-Security-Policy].
HTTP/1.1 103 Early Hint Content-Security-Policy: script-src: 'self'; Link: </scripts/app.js>; rel=preload; as=script
HTTP response with content security policy restrictions
الاستجابة HTTP 200 OK تطبق سياسة أمان المحتوى CSP لحظر تنفيذ سكربتات JavaScript كوسيلة لتعزيز الأمان.
HTTP/1.1 200 OK Content-Security-Policy: script-src: 'none'; Content-Type: text/html <!doctype html> <script src="/scripts/app.js" rel="preload"></script>
ملاحظات
- سياسة أمان المحتوى CSP هي ميزة أمان على مستوى المتصفح تمنع أنواعًا معينة من الهجمات، مثل حقن السكربتات بين المواقع [XSS] وقرصنة بيانات النقر clickjacking، من خلال التحكم في الموارد التي يمكن للصفحة تحميلها أو تنفيذها.
- CSP تسمح للخادم بإصدار مجموعة من القواعد تُعرف بالسياسات، تحدد مصادر المحتوى التي يُسمح للصفحة بتحميلها، مثل السكربتات، الأنماط، الصور، وغيرها، يتم تعريف هذه السياسات عبر رؤوسHTTP أو داخل عنصر "<meta>" في صفحة HTML.
- كلمة "none" في CSP تمنع تنفيذ أو تحميل السكربتات نهائيًا، يُطبق هذا حتى لو كانت السكربتات محملة مسبقًا، مما يعزز الأمان بمنع تشغيل الأكواد المحتملة الخطورة.
- Cross-Site Scripting XSS هو هجوم ينطوي على حقن سكربتات ضارة في مواقع الويب لسرقة بيانات حساسة أو تنفيذ عمليات غير مصرح بها، وCSP تحمي ضد هذه الهجمات بتقييد مصادر السكربتات.
- بيانات النقر clickjacking هي هجوم يخدع المستخدم للنقر على عناصر خفية لتحقيق إجراءات غير مقصودة، CSP تساهم في مواجهة هذا التهديد عبر تقييد قدرة الصفحات على تضمين أو عرض محتوى غير مصرح به.
- سمة crossorigin تحدد كيفية طلب المتصفح للموارد من نطاقات مختلفة، بتمييز بين طلبات ببيانات أو بدون، لدعم الأمان عبر سياسات CORS.
</>
HTTP Codes In Successful Responses
الاستجابات الناجحة في HTTP Codes
هذه الفئة من أكواد الاستجابة تُشير إلى أنّ الطلب الذي قام به المستخدم للخادم قد نُفِّذ بنجاح.، مثل [200]، وتدل علي نجاح العملية بإرجاع البيانات المطلوبة، مثل صفحة ويب أو معلومة من قاعدة بيانات.
تُستخدم هذه الأكواد في بروتوكولات HTTP لتوضيح حالة الاتصال، وهي مهمة للمبرمجين والمطورين، للتأكد من أنّ كافة العمليات تسير بسلاسة. بالنسبة للمبتدئين، هذه الأكواد تُعد كتأكيد على أنّ الاتصال بين جهاز المستخدم والخادم يسير بشكل صحيح، مما يضمن حصول المستخدم على المعلومات المطلوبة.
أكواد HTTP الخاصة بالاستجابات الناجحة Successful Responses
- الكود 200 OK : يشير إلى أن الطلب قد تمت معالجته بنجاح، وأن الخادم أرسل البيانات المطلوبة إلى المتصفح.
- الإبداع 201 Created : يدل على أن الطلب قد أدى إلى إنشاء مورد جديد، مثل إنشاء سجل جديد في قاعدة البيانات أو ملف.
- القبول 202 Accepted : يعني أن الطلب قد قُبل للمعالجة، لكن لم يتم تنفيذه بعد بشكل كامل، حيث قد يستغرق بعض الوقت قبل أن ينتهي.
- المعلومات غير المصرح بها 203 Non-Authoritative Information : يشير إلى أن المعلومات التي تمت إعادتها ربما لا تكون من المصدر الأصلي لكنها تمثل المعلومات المطلوبة.
- بدون محتوى 204 No Content : يُستخدم للإشارة إلى أن الخادم قام بمعالجة الطلب ولكنه لا يحتوي على أي محتوى لعرضه، حيث يمكن أن يُستخدم لتحديث البيانات دون تغيير في الواجهة الظاهرة.
- إعادة تعيين المحتوى 205 Reset Content : يعني أنه ينبغي على العميل إعادة تعيين واجهته، مثل تنظيف نموذج أو إعادة تحميل الصفحة.
- المحتوى الجزئي 206 Partial Content : يدل على أن الخادم يعيد جزءًا من المحتوى، والذي يُستخدم عادة لتنزيل بعض أجزاء الملفات مثل مقاطع الفيديو أو الصوت.
- متعدد الحالات 207 Multi-Status: يستخدم هذا الكود للرد على طلب يتضمن عمليات متعددة، حيث يتم عرض حالات نجاح وفشل مختلفة لكل مورد.
- تم الإبلاغ عنها بالفعل 208 Already Reported: يستخدم للإشارة إلى أن الحالة النهائية للطلب تم الإبلاغ عنها بالفعل في جزء سابق من الطلب متعدد المراحل.
- تم استخدام 226 IM Used: يشير إلى أن الاستجابة تحتوي على محتوى ناجح جزئيًا، حيث تم استخدام الهندسة العكسية الجزئية بنجاح لاستعادة البيانات.
</>
HTTP 200 Code
الكود HTTP 200
The Status
نمط كود الحالة Code 200
200 Code
HTML Get Request with Client Info and Content Preferences
إرسال طلب HTTP من المتصفح إلى الخادم على الشكل التالي.
GET /index.html HTTP/1.1 Host: www.example.com User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-US,en;q=0.5 Connection: keep-alive
The HTTP 200 OK response includes a sample HTML page
سيقوم الخادم بالرد بكود 200 OK وإرسال الصفحة المطلوبة إلى المتصفح.
HTTP/1.1 200 OK Date: Mon, 23 Oct 2023 12:00:00 GMT Server: Apache/2.4.41 (Unix) Content-Type: text/html Content-Length: 153 <html> <head> <title>Example Page</title> </head> <body> <h1>Welcome to Example.com!</h1> <p>This is an example page.</p> </body> </html>
</>
HTTP 201 Created
تم إنشاؤه HTTP 201
كود الحالة 201 هو كود حالة استجابة HTTP يشير إلى أن الطلب قد نجح وأدى إلى إنشاء مورد جديد. كود 201 يدل علي تم تحقيق الطلب وتم إنشاء مورد جديد نتيجة لذلك.
يتم استخدامه عادة في الرد على طلبات HTTP POST التي تؤدي إلى إنشاء مورد جديد على الخادم، ولكن يمكن أيضًا أن يكون مناسبًا لطلبات HTTP PUT إذا أدى إلى إنشاء جسم جديد.
وفيما يلي بعض المواضيع التي نستخدام فيها كود الحالة 201:
- عند إنشاء حساب مستخدم جديد
- عند إضافة منتج جديد إلى متجر عبر الإنترنت
- عند إرسال نموذج على موقع الويب يؤدي إلى إنشاء سجل جديد
The Status
نمط كود الحالة 201 Created
201 Created
Create a new user using a HTTP POST request
طلب POST HTTP لإنشاء حساب جديد باسم "example_user" والبريد الإلكتروني "[email protected]" بتنسيق JSON.
POST /api/users Content-Type: application/json { "username": "example_user", "email": "[email protected]" }
Successfully responded to create a new user
استجابة Code 201 تحتوي على بيانات المستخدم الجديد بنجاح مع تفاصيل الهوية، اسم المستخدم، البريد الإلكتروني، وتاريخ الإنشاء.
HTTP/1.1 201 Created Content-Type: application/json { "id": 12345, "username": "example_user", "email": "[email protected]", "created_at": "2022-01-01T12:00:00Z" }
</>
202 Accepted
القبول 202
الكود HTTP Accepted 202 يُعرف بأنه "مقبول"، حيث يُشير إلى استلام الطلب وفهمه من قِبل الخادم، ولكن قد تتأخر عملية معالجة الطلب أو لا تكتمل في الوقت الحالي. يُؤكد أن الطلب صالح، ولكن قد لا تكتمل معالجته في الحال.
باختصار، الكود الحالة 202 Accepted يُظهر أن الطلب تم قبوله، لكن قد يستغرق الأمر بعض الوقت لاكتمال معالجته أو الإجراء المطلوب.
The Status
نمط كود الحالة 202 Accepted
202 Accepted
Create a new account via HTTP POST request in HTTP/1.1
استخدم POST HTTP/1.1 لإنشاء حساب جديد مع بيانات المستخدم مثل اسم المستخدم وكلمة المرور بتنسيق JSON.
POST /create_account HTTP/1.1 Host: example.com Content-Type: application/json Content-Length: 50 { "username": "new_user", "password": "securepassword123" }
HTTP 202 Accepted response displaying account creation progress via HTTP/1.1, time, and message data in JSON format.
رد HTTP بكود HTTP Accepted 202 يُظهر أن عملية إنشاء الحساب قيد التقدم وتحت المتابعة، ويتضمن رسالة تفيد بذلك بتنسيق JSON.
HTTP/1.1 202 Accepted Date: Wed, 15 Sep 2021 08:00:00 GMT Content-Type: application/json Content-Length: 38 { "message": "Account creation in progress" }
</>
203 Non-Authoritative Information
المعلومات غير المصرح بها 203
The Status
نمط كود الحالة 203 Non-Authoritative Information
203 Non-Authoritative Information
Get ideal resources from www.example.com
في هذا الطلب، يتم إرسال طلب GET إلى الخادم www.example.com لاسترجاع الموارد المتواجدة في المسار /example.
GET /example HTTP/1.1 Host: www.example.com
Refresh Resources: Directing Information to a New Location
كود الحالة 203 يشير إلى توجيه العميل إلى مصدر آخر عبر https://www.newexample.com.
HTTP/1.1 203 Non-Authoritative Information Date: Wed, 23 Jun 2021 12:00:00 GMT Location: https://www.newexample.com Content-Length: 0 Connection: close
</>
204 No Content
بدون محتوى 204
The Status
نمط كود الحالة 204 No Content
204 No Content
Query for user profile in JSON format
الطلب المرسل يستفسر عن ملف تعريف المستخدم المُخزن على الخادم، حيث يطلب بتنسيق JSON لتبادل البيانات.
GET /api/user/profile HTTP/1.1 Host: example.com Accept: application/json
Response with status code HTTP No Content 204 to user profile request.
استجابة بكود الحالة HTTP 204 No Content تأكد تنفيذ الطلب بنجاح دون وجود أية بيانات لإرجاعها.
HTTP/1.1 204 No Content Date: Sun, 12 Dec 2021 08:30:00 GMT Server: Apache/2.4.6 (CentOS) Content-Length: 0
</>
205 Reset Content
إعادة تعيين المحتوى 205
كود حالة HTTP Reset Content 205 هو كود استخدم في بروتوكول نقل الويب HTTP ليشير إلى حاجة المتصفح لإعادة تعيين المحتوى الذي يتم عرضه. ببساطة، يعني ذلك أن الخادم يريد المتصفح أن يعرض المحتوى الجديد الذي تم تحميله من الخادم.
كود الحالة 205 يُسهل التواصل بين الخوادم والمتصفحات على الإنترنت. عند رؤية كود الحالة 205، يجب على المتصفح إعادة تحميل الصفحة لعرض المحتوى الجديد.
The Status
نمط كود الحاله 205 Reset Content
205 Reset Content
HTTP POST message to reset the form on the example.com server
رسالة HTTP POST لإعادة تعيين النموذج على example.com تحتوي على بيانات JSON مع مفتاح reset وقيمة true.
POST /reset-form HTTP/1.1 Host: example.com Content-Type: application/json { "reset": true }
You need to reload the form to reset it
استجابة تطلب إعادة تحميل النموذج لإعادة تعيينه
HTTP/1.1 205 Reset Content Content-Type: text/plain Please refresh the form to reset it.
</>
206 Partial Content
المحتوى الجزئي 206
The Status
نمط كود الحالة 206 Partial Content
206 Partial Content
Request to download video file with byte range specified
طلب HTTP GET لملف الفيديو video.mp4 من example.com بنطاق البايتات 0-999 واتصال مستمر.
GET /video.mp4 HTTP/1.1 Host: example.com Range: bytes=0-999 Connection: keep-alive
HTTP response with code 206 Partial Content sends a portion of the video file with specified scopes and size
استجابة كود HTTP Partial Content 206 تحتوي على جزء من ملف الفيديو بنطاق البايتات 0-999 من إجمالي 50000 بايت.
HTTP/1.1 206 Partial Content Date: Wed, 26 May 2021 07:30:15 GMT Content-Type: video/mp4 Content-Length: 1000 Content-Range: bytes 0-999/50000
</>
207 Multi Status
متعدد الحالات 207
The Status
نمط كود الحالة 207 Multi Status
207 Multi Status
Sending a request to view the form through a persistent connection
طلب HTTP GET لمورد /example من www.example.com ب Content-Type JSON واتصال keep-alive.
GET /example HTTP/1.1 Host: www.example.com Connection: keep-alive Content-Type: application/json
A JSON success response contains multiple data
تم استلام ومعالجة طلب العميل بنجاح. الرد يتضمن بيانات نموذجية بتنسيق JSON، تؤكد على نجاح الاستجابة للطلب.
HTTP/1.1 207 Multi Status Content-Type: application/json Date: Tue, 12 Oct 2021 15:30:00 GMT Connection: keep-alive { "status": "Success", "data": { "source1": { "id": 1, "name": "Source 1" }, "source2": { "id": 2, "name": "Source 2" } } }
</>
208 Already Reported
تم الإبلاغ عنها بالفعل 208
The Status
نمط كود الحالة 208 Already Reported
208 Already Reported
Request a text file on www.example.com
الرسالة تستخدم طريقة GET لطلب ملف نصي على موقع www.example.com.
GET /example/file.txt HTTP/1.1 Host: www.example.com
HTTP response with code 208 containing previous acknowledgement, server details, and connection status
الرد بكود الحالة 208 يشير إلى أن البيانات تمت طلبها مسبقًا واستلامها بنجاح، مع وجود محتوى بحجم صفر وإغلاق الاتصال.
HTTP/1.1 208 Already Reported Date: Tue, 22 Feb 2022 08:30:00 GMT Server: Apache/2.4.41 (Unix) Content-Length: 0 Connection: close
ملحوظة
</>
226 IM Used
تم استخدام 226
The Status
نمط كود الحالة 226 IM Used.
226 IM Used
GET request to /example on www.example.com with keep-alive connection
طلب GET باستخدام HTTP/1.1 للوصول إلى /example على www.example.com مع اتصال keep-alive لتقليل التأخير.
GET /example HTTP/1.1 Host: www.example.com Connection: keep-alive
The request was successfully used and the current version was successfully modified HTTP 226 response
استجابة HTTP 226 IM Used توضح تلبية الطلب للمورد مع تطبيق عمليات التلاعب على النسخة الحالية.
HTTP/1.1 226 IM Used Date: Thu, 07 Oct 2021 08:30:00 GMT Server: Apache Connection: keep-alive Content-Type: text/html <!DOCTYPE html> <html> <head> <title>226 IM Used</title> </head> <body> <h1>226 IM Used</h1> <p>The server has fulfilled the request for the resource and the response is a representation of the result of one or more instance-manipulations applied to the current instance.</p> </body> </html>
</>
HTTP Codes In Redirection Messages
رسائل إعادة التوجيه في HTTP Codes
تُعتبر رسائل إعادة التوجيه 3xx redirection messages جزءًا مهمًا من بروتوكول نقل النصوص HTTP، حيث تُستخدم لإرشاد [المتصفح] المتصفح بأن الصفحة أو المورد المطلوب قد تم نقله إلى عنوان جديد، وتتميز هذه الرسائل بكونها تُطلب من الخادم الذي يقوم بتوجيه العميل [المتصفح] إلى مكان جديد للحصول على المعلومات المطلوبة.
يستخدم المطورون ومديرو المواقع رسائل إعادة التوجيه redirection messages لتحسين تجربة المستخدم، حيث يتم توجيه الزائرين إلى الصفحات الجديدة تلقائيًا. وتشمل رسائل إعادة التوجيه 3xx redirection messages أنواعًا مثل 301 moved permanently و 302 found، وتساعد هذه الرسائل في تحسين ترتيب المواقع في محركات البحث عبر الحفاظ على ترابط الروابط القديمة وتجنب المحتوى المكرر، مما يُحسّن وسائل SEO.
أكواد HTTP الخاصة برسائل إعادة التوجيه Redirection Messages
- خيارات متعددة 300 Multiple Choices: يُظهر قائمة بالروابط المتاحة حيث يُمكن للمستخدم اختيار رابط للانتقال إلى الموقع المطلوب، بحد أقصى خمسة عناوين.
- نقل دائم 301 Moved Permanently: تم نقل الصفحة المطلوبة إلى عنوان جديد بشكل دائم ويجب تحديث جميع الروابط المتعلقة بها.
- تم العثور 302 Found: تم نقل الصفحة المطلوبة إلى عنوان جديد بشكل مؤقت.
- انظر لموقع آخر 303 See Other: يمكن العثور على الصفحة المطلوبة في عنوان مختلف.
- لم يتم التعديل 304 Not Modified: هذا الكود هو استجابة للرأس [If-Modified-Since] أو [If-None-Match] حيث لم يتم تعديل الرابط منذ التاريخ المحدد.
- استخدام بروكسي 305 Use Proxy: يجب الوصول إلى الرابط المطلوب من خلال البروكسي المذكور في رأس الموقع.
- غير مستخدم 306 Unused: كان هذا الكود مستخدمًا في إصدار سابق ولكنه لم يعد مستخدمًا، ومع ذلك فإن الكود محجوز.
- إعادة توجيه مؤقتة 307 Temporary Redirect: تم نقل الصفحة المطلوبة مؤقتًا إلى عنوان جديد.
</>
HTTP 300 Multiple Choices
خيارات متعددة 300 HTTP
</>
HTTP 301 Moved Permanently
نقل دائم 301 HTTP
</>
HTTP 302 Found
تم العثور 302 HTTP
</>
HTTP 303 See Other
انظر لموقع آخر 303 HTTP
</>
HTTP 304 Not Modified
لم يتم التعديل 304 HTTP
</>
HTTP 305 Use Proxy
استخدام بروكسي 305 HTTP
</>
HTTP 306 Unused
غير مستخدم 306 HTTP
</>
HTTP 307 Temporary Redirect
إعادة توجيه مؤقتة 307 HTTP
</>
HTTP Codes In Client Errors Responses
استجابات أخطاء العميل في HTTP Codes
- أكواد HTTP الخاصة بأخطاء العميل Client Errors Responses
- طلب سيء 400 Bad Request: يشير إلى أن الخادم لم يتمكن من فهم الطلب بسبب تنسيق غير صحيح.
- غير مصرح به 401 Unauthorized: يعني أن المستخدم لا يمتلك الصلاحية المناسبة للوصول إلى المورد المطلوب.
- محظور 403 Forbidden: يشير إلى أن الخادم يرفض الوصول إلى المورد لأسباب معينة.
- غير موجود 404 Not Found: يدل على عدم توفر المورد المطلوب على الخادم.
- انتهاء الوقت المسموح للطلب 408 Request Timeout: يحدث عندما يتجاوز الطلب الحد الزمني المسموح به.
- انتهاء صلاحية التوثيق 419 Authentication Timeout: يحدث عندما تنتهي صلاحية التحقق من الهوية عند المستخدم، مما يتطلب إعادة التوثيق للوصول إلى المورد المطلوب.
- طلبات زائدة 429 Too Many Requests: يعني أن العميل قام بإرسال الكثير من الطلبات في وقت قصير.
- غير متاح لأسباب قانونية 451 Unavailable For Legal Reasons: يستخدم عندما يكون الموارد غير متوفرة بسبب أسباب قانونية.
- طلب سيء 400 Bad Request: يشير إلى أن الخادم لم يتمكن من فهم الطلب بسبب تنسيق غير صحيح.
</>
HTTP Codes In Server Errors Responses
استجابات أخطاء الخادم في HTTP Codes
تشير أكواد الأخطاء في استجابات الخادم HTTP إلى وجود مشكلات تنبع من الخادم نفسه، وتؤثر على قدرته على معالجة الطلبات الواردة من المستخدمين، عندما يظهر أحد هذه الأكواد، فإن ذلك يشير إلى أن هناك خللًا في العمليات الجارية على الخادم يحتاج إلى انتباه فوري من فريق التقنية المسؤول عن إدارة النظام.
يمكن أن تتنوع أسباب ظهور هذه الأكواد بحسب طبيعة المشكلة، وقد تشمل مشكلات في الاتصال بقاعدة البيانات، أو تعطُّل في موارد الشبكة، أو أخطاء في البرمجيات المثبتة على الخادم، معرفة هذه الأكواد بدقة يُعد أمرًا مهمًا للتفاعل السريع مع المشكلات وضمان استمرارية الخدمة.
أكواد HTTP الخاصة باستجابات أخطاء الخادم Server Error Responses:
- خطأ داخلي في الخادم 500 Internal Server Error: يظهر عند مواجهة الخادم لخطأ غير متوقع يمنعه من تنفيذ الطلب.
- غير مُنفّذ 501 Not Implemented: يشير إلى أن الخادم لا يدعم الوظيفة المطلوبة لتنفيذ الطلب.
- خطأ في بوابة الاتصال 502 Bad Gateway: يعني أن الخادم استلم استجابة غير صالحة من الخادم الآخر أثناء محاولة معالجة الطلب.
- الخدمة غير متوفرة 503 Service Unavailable: يدل على أن الخادم غير قادر على معالجة الطلب في الوقت الحالي بسبب الحمل الزائد أو الصيانة المؤقتة.
- مهلة بوابة الاتصال 504 Gateway Timeout: يشير إلى أن الخادم لم يستلم استجابة في الوقت المناسب من الخادم الآخر أثناء محاولته لمعالجة الطلب.
- إصدار HTTP غير مدعوم 505 HTTP Version Not Supported: يعني أن الخادم لا يدعم إصدار HTTP المستخدم في الطلب.