في هذا الدرس 9تصفّح المواضيع
HTTP Methods
طرق HTTP
HTTP Methods طرق HTTP
طرق HTTP methods هي الأوامر التي تُستخدم ضمن بروتوكول نقل النصوص HTTP لتوجيه الخوادم حول كيفية التعامل مع طلبات معينة من العملاء على الشبكة، وتُعتبر هذه الطرق جزءًا أساسيًا من بنية تطبيقات الويب الحديثة، حيث تساعد في تحديد كيفية تبادل المعلومات بين العميل والخادم في الشبكة، مثل الملفات، والبيانات، والخدمات الأخرى المتوفرة على الويب.
من بين طرق HTTP methods الأساسية نجد طريقة GET التي تُستخدم لجلب المعلومات من الخادم دون التأثير على الموارد، وPOST التي تُستخدم لإرسال البيانات للخادم لإنشاء مورد جديد أو لمعالجة البيانات، وPUT التي تُتيح إنشاء المورد في الهدف المحدد أو استبدال تمثيله، بالإضافة إلى DELETE التي تُعنى بإزالة الموارد، ولكل منها وظيفة محددة في عمليات التفاعل بين العميل والخادم.
أمثلة المسارات والحسابات والاستجابات تعليمية ولا تصف خدمات فعلية للموقع. الأسطر النصية تخص HTTP/1.1، وعبارات مثل request-target وquery قوالب وصفية وليست نصًا يُرسل حرفيًا. حُسب طول الأجسام أدناه ببايتات UTF-8 مع LF بين أسطر الجسم دون نهاية سطر إضافية؛ تفصل رؤوس HTTP/1.1 بـ CRLF وينهيها سطر فارغ.
HTTP Request Methods
طرق الطلب في HTTP
HTTP Request Methods طرق الطلب في HTTP
جدول طرق HTTP methods في بروتوكول HTTP يوضح وظائف استخدام كل طريقة عند التفاعل مع خوادم الويب، وهذه الطرق تمكن من القدرة على استرداد البيانات وإرسالها وتعديلها أو حتى حذفها عن طريق واجهات برمجة التطبيقات APIs والويب.
| Method | Description |
| GET | الغرض من طريقة HTTP GET method هو ببساطة استرداد البيانات من الخادم، تُستخدم هذه الطريقة لطلب أيٍ من الموارد التالية: صفحة ويب، أو صورة، أو فيديو، أو ملفات JSON، أو ملف HTML، أو ملف CSS، أو ملف JavaScript. |
| HEAD | تتشابه طريقة HTTP HEAD method وظيفتها مع طريقة HTTP GET method، إلا أن الاستجابة من الخادم تقتصر على سطر الحالة status line والرؤوس headers فقط، بدون الجسم body. |
| POST | يتم استخدام طريقة HTTP POST method عندما تريد إرسال بعض البيانات إلى الخادم لإنشاء مورد جديد أو لمعالجة البيانات، على سبيل المثال، عند تقديم نموذج تسجيل على موقع ويب. |
| PUT | يتم استخدام طريقة HTTP PUT method لمطالبة الخادم بتخزين كيان الجسم entity-body في موقع محدد بواسطة عنوان URL. |
| DELETE | تطلب طريقة HTTP DELETE method من الخادم إزالة الارتباط بين المورد وعنوانه URI؛ لا يلزم أن يكون ملفًا أو أن تُمحى البيانات فعليًا. |
| CONNECT | يستخدم العميل طريقة HTTP CONNECT method ، ليطلب من وسيط إنشاء نفق إلى المضيف والمنفذ المحددين. النفق نفسه لا يشفّر البيانات. |
| OPTIONS | تُستخدم طريقة HTTP OPTIONS method من قبل العميل لمعرفة طرق HTTP methods والخيارات الأخرى التي يدعمها خادم الويب، هذه الطريقة تساعد في تحديد العمليات المسموح بها على الخادم لمورد محدد. |
HTTP GET Method
طريقة HTTP GET
HTTP GET Method طريقة HTTP GET
تُستخدم طريقة HTTP GET method في بروتوكول HTTP لطلب request البيانات من الخادم بهدف استرجاع المعلومات عبر عنوان URL، تتميز هذه الطريقة بأنها تمكّن العميل [المتصفح] من إرسال طلب دون التعديل على البيانات الموجودة في الخادم، تُستخدم عادةً لطلب الموارد مثل صفحات الويب، وملفات HTML ،JSON ،CSS ،JavaScript، والصور، الفيديوهات، وتُعتبر طريقة طلب HTTP GET request method عمليةً آمنةً، بمعنى أن العميل لا يطلب تغيير حالة الخادم. قد تسجل الخدمة الطلب أو تحدث إحصاءات؛ وصف safe يخص الأثر المطلوب ولا يعني غياب كل أثر جانبي.
كيفية استخدام طريقة GET في HTTP
طريقة HTTP GET تُستخدم لاسترجاع البيانات من الخادم من خلال "<request-target>" لتحديد المورد، مع إمكانية إضافة استفسارات باستخدام "?"<query>" إذا لزم الأمر، ويشير "HTTP/1.1" إلى إصدار البروتوكول المستخدم.
How to use GET method in HTTP
طريقة استخدام GET في HTTP.
GET <request-target>["?"<query>] HTTP/1.1
HTTP GET Request Method
طلب HTTP GET request يتم إرساله إلى الخادم لاسترداد صفحة index.html:
GET /index.html HTTP/1.1
Host: www.closetag.com
User-Agent: Mozilla/5.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
HTTP response message from server
رسالة الاستجابة response من الخادم علي الطلب السابق:
الرؤوس التالية تقابل جسم HTML المعروض بعدها دون ضغط. قبول العميل br لا يلزم الخادم باستخدامه؛ إذا ضغط الخادم الجسم فعليًا، يرسل Content-Encoding المناسب ويحسب Content-Length من البايتات المضغوطة.
HTTP/1.1 200 OK
Date: Mon, 23 Oct 2023 12:00:00 GMT
Server: Apache/2.4.41 (Ubuntu)
Last-Modified: Sun, 22 Oct 2023 18:00:00 GMT
Content-Length: 206
Content-Type: text/html; charset=UTF-8
Connection: close
The Required index.html Page
هذه الصفحة المطلوبة وهي index.html.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Index Page</title>
</head>
<body>
<h1>Welcome to the Index Page</h1>
<p>This is a sample index page.</p>
</body>
</html>
HTTP HEAD Method
طريقة HTTP HEAD
HTTP HEAD Method طريقة HTTP HEAD
طريقة HTTP HEAD هي واحدة من الطرق التي يُمكن استخدامها في بروتوكول نقل النصوص HTTP وتستخدم في استرجاع معلومات عن الموارد الموجودة على شبكة الإنترنت دون الحاجة إلى تنزيل كامل المحتوى الخاص بالموارد، فبدلًا من التحميل الكامل للمحتوي، مثلاً يمكن استخدام طلب HEAD لقراءة رأسcontent-length] header] للتحقق من حجم الملف قبل تنزيله كاملًا باستخدام GET، ويفيد استخدام هذه الطريقة في تقليل حجم البيانات المرسلة بين العميل والخادم مما يؤدي إلى تحسين الأداء والكفاءة.
كيفية استخدام طريقة HEAD في HTTP
طريقة HTTP HEAD تُستخدم للحصول على رؤوس المورد دون تحميل المحتوى، من خلال "<request-target>"، مع إمكانية إضافة استفسارات باستخدام "?"<query>"، إذا لزم الأمر، ويشير "HTTP/1.1" إلى إصدار البروتوكول المستخدم.
قد يغيب Content-Length عن استجابة HEAD. إذا أرسله الخادم، فيجب أن يساوي حجم المحتوى الذي كان سيرسله لطلب GET المقابل، مع أن HEAD نفسه لا يحمل جسمًا. مثال HEAD أدناه مستقل عن مثال GET السابق.
How to use HEAD method in HTTP
طريقة استخدام HEAD في HTTP.
HEAD <request-target>["?"<query>] HTTP/1.1
HTTP HEAD Request Method
استخدام طريقة HEAD لجلب معلومات HEAD الخاصة بالملف index.html:
HEAD /index.html HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Host: www.closetag.com
Accept-Language: en-us
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
HTTP response message from server
رسالة الاستجابة response من الخادم علي الطلب السابق:
HTTP/1.1 200 OK
Date: Wed, 04 Dec 2019 05:15:40 GMT
Server: Apache/2.4.41 (Win32)
Last-Modified: Mon, 02 Dec 2019 15:40:30 GMT
ETag: "34aa387-d-1568eb00"
Vary: Authorization,Accept
Accept-Ranges: bytes
Content-Length: 55
Content-Type: text/html
Connection: close
HTTP POST Method
طريقة HTTP POST
HTTP POST Method طريقة HTTP POST
تُعتبر طريقة HTTP POST طريقة أساسية لنقل البيانات من العميل إلى الخادم على الإنترنت، وتُرفق البيانات عادةً بجسم الطلب، وقد يحتوي URI على استعلام أيضًا. يحدد الخادم والتطبيق حدود الحجم؛ POST وحده لا يشفّر النقل. هذا يعني أن البيانات لا تظهر في شريط العنوان بالمتصفح، مما يتيح نقل كميات كبيرة ومعقدة من البيانات لكن غيابها عن شريط العنوان ليس ضمانًا للخصوصية؛ يلزم HTTPS وضوابط الخادم والتطبيق. مما تسمح بتنفيذ العمليات التي تتطلب تخزينًا أو تغييرًا مثل رفع الملفات أو تقديم نماذج الويب. وتُستخدَم هذه الطريقة بشكل واسع في التطبيقات الحديثة.
كيفية استخدام طريقة POST في HTTP
طريقة HTTP POST تُستخدم لإرسال بيانات العميل إلى الخادم لغرض إنشاء أو تحديث الموارد، من خلال "<request-target>". بينما تُرسل البيانات عادةً في جسم الطلب، يمكن إضافة استفسارات في عنوان URL باستخدام "?<query>" إذا لزم الأمر. ويُشير "HTTP/1.1" إلى إصدار البروتوكول المستخدم.
How to use POST method in HTTP
طريقة استخدام POST في HTTP.
POST <request-target>["?"<query>] HTTP/1.1
HTTP POST Request Method
مثال لإرسال بيانات تسجيل مستخدم جديد إلى خادم:
POST /register HTTP/1.1
Host: www.closetag.com
Content-Type: application/json
Content-Length: 61
{
"username": "new user",
"password": "secure password"
}
HTTP response message from server
رسالة الاستجابة response تشير إلى نجاح عملية التسجيل:
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 44
{
"message": "User created successfully"
}
HTTP PUT Method
طريقة HTTP PUT
HTTP PUT Method طريقة HTTP PUT
طريقة HTTP PUT تُستخدم عادةً لتحميل أو تحديث البيانات على الخادم، وتهدف هذه الطريقة إلى إرسال بيانات معينة إلى الخادم وإجراء عمليات تخزين تلك البيانات بشكل كامل، أي أنه يتم استبدال البيانات الموجودة بالبيانات الجديدة التي يتم إرسالها، وتتميز هذه الطريقة بأنها ثابتة، أي idempotent: تكرار الطلب نفسه له الأثر المقصود نفسه على حالة المورد. قد تختلف الاستجابة وسجلات الطلبات بين المحاولات، ولكن من غير الممكن تخزين استجابات PUT مؤقتًا.
كيفية استخدام طريقة PUT في HTTP
طريقة HTTP PUT تُستخدم لإرسال بيانات العميل إلى الخادم بغرض إنشاء مورد جديد أو استبدال تمثيل مورد موجود في المسار المحدد بـ "<request-target>". تُرسل البيانات عادةً في جسم الطلب، ويمكن استخدام "?<query>" لإضافة استفسارات في عنوان URL إذا لزم الأمر، ويشير "HTTP/1.1" إلى إصدار البروتوكول المستخدم.
How to use PUT method in HTTP
طريقة استخدام PUT في HTTP.
PUT <request-target>["?"<query>] HTTP/1.1
HTTP PUT Request Method
استخدام طريقة HTTP PUT لتحديث أو إنشاء بيانات موظف ببيانات JSON في نظام إدارة.
PUT /employees/123 HTTP/1.1
Host: www.closetag.com
Content-Type: application/json
Content-Length: 89
{
"name": "Ahmed Ali",
"position": "Project Manager",
"email": "[email protected]"
}
HTTP response message from server
رسالة الاستجابة response تُشير إلى أن الطلب تم تنفيذه بنجاح وأن الموظف موجود وتم تحديث بياناته.
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 160
{
"message": "Employee updated successfully",
"employee": {
"id": 123,
"name": "Ahmed Ali",
"position": "Project Manager",
"email": "[email protected]"
}
}
HTTP DELETE Method
طريقة HTTP DELETE
HTTP DELETE Method طريقة HTTP DELETE
تُستخدم طريقة HTTP DELETE لحذف موارد محددة بواسطة عنوان URI على الخادم، أي إزالة الارتباط بالمورد المستهدف؛ لا يفرض البروتوكول محو التخزين أو تحرير مساحة، فقد يحتفظ التطبيق بالبيانات للأرشفة أو الاسترجاع. عندما يقوم العميل، مثل المتصفح، بطلب حذف، يعمل الخادم على تنفيذ العملية مما يُسهل إدارة أفضل للمحتوى والموارد. ومع ذلك، من المهم توخي الحذر لتجنب الحذف الدائم للبيانات المهمة.
كيفية استخدام طريقة DELETE في HTTP
طريقة HTTP DELETE تُستخدم لحذف مورد موجود من الخادم في المسار المحدد بـ "<request-target>". لا يتطلب الطلب وجود بيانات في جسم الطلب، ويمكن استخدام "?<query>" لإضافة استفسارات في عنوان URL إذا لزم الأمر، ويشير "HTTP/1.1" إلى إصدار البروتوكول المستخدم.
How to use DELETE method in HTTP
طريقة استخدام DELETE في HTTP.
HTTP DELETE Request Method
مثال لنظامً لإدارة المنتجات، وتريد حذف منتج محدد من قاعدة البيانات باستخدام معرف المنتج productid.
DELETE /products/123 HTTP/1.1
Host: www.example.com
HTTP response message from server
تُشير رسالة الاستجابة response إلى أن الطلب قد تم بنجاح وتم حذف المورد المطلوب.
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 72
{
"message": "Product deleted successfully",
"product Id": 123
}
HTTP CONNECT Method
طريقة HTTP CONNECT
HTTP CONNECT Method طريقة HTTP CONNECT
طريقة HTTP CONNECT هي جزء من بروتوكول HTTP وتُستخدم لإنشاء اتصال نفق TCP/IP بين العميل والخادم عبر وكيل مثل البروكسي. ويكون هذا مفيدًا بشكل خاص عند استخدام بروتوكول HTTPS الذي يتطلب نقل البيانات بشكل مشفر وآمن.
ينشئ CONNECT نفقًا لنقل البايتات. عند استخدام HTTPS يتفاوض العميل مع الوجهة على TLS داخل النفق؛ الحماية تأتي من TLS والتحقق من الشهادة، ولا يشفّر CONNECT البيانات تلقائيًا.
كيفية استخدام طريقة CONNECT في HTTP
طريقة HTTP CONNECT تُستخدم لإنشاء اتصال نفق بين العميل والخادم عبر وكيل عن طريق تحديد العنوان المطلوب باستخدام " المنفذ "port"، مفصول بعلامة colon ":" و "host". لا يتطلب الطلب وجود بيانات في جسم الطلب، ويشير "HTTP/1.1" إلى إصدار البروتوكول المستخدم. بعد إنشاء الاتصال، يمكن نقل البايتات عبر النفق؛ تعتمد سريتها وسلامتها على البروتوكول المستخدم داخله.
How to use CONNECT method in HTTP
طريقة استخدام CONNECT في HTTP.
CONNECT <host>:<port> HTTP/1.1
HTTP CONNECT Request Method
طلب HTTP CONNECT لإنشاء اتصال نفق إلى خادم معيّن عبر بروكسي.
قيمة Basic في المثال هي Base64 لعبارة username:password التعليمية، وليست تشفيرًا. لا تستخدم بيانات حقيقية عبر اتصال غير محمي إلى البروكسي؛ TLS داخل النفق لا يحمي رأس Proxy-Authorization الذي أُرسل قبل إنشاء النفق.
CONNECT www.closetag.com:443 HTTP/1.1
Host: www.closetag.com:443
Proxy-Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
HTTP response message from server
توضح رسالة الاستجابة response أن البروكسي قد نجح في إنشاء الاتصال النفق بين العميل والخادم.
HTTP/1.1 200 Connection Established
Date: Wed, 06 Sep 2023 18:30:00 GMT
Server: Proxy Server/1.0
Proxy-Agent: Proxy Server/1.0
HTTP OPTIONS Method
طريقة HTTP OPTIONS
HTTP OPTIONS Method طريقة HTTP OPTIONS
طريقة HTTP OPTIONS تُستخدم للحصول على معلومات حول الخيارات المتاحة لتنفيذ عمليات على عنوان محدد على الخادم، حيث يمكن للمستخدم معرفة الطرق المسموح بها مثل GET وPOST وPUT وDELETE. يساعد ذلك في تحسين الكفاءة والالتزام بالبروتوكولات عند التعامل مع الخدمات عبر الشبكة.
ويُعتبر هذا الأسلوب مفيدًا لمسؤولي الشبكات والمطورين لفهم القدرات المتاحة للخادم فيما يخص معالجة الطلبات وتنفيذ العمليات بكفاءة.
كيفية استخدام طريقة OPTIONS في HTTP
لا تتطلب طريقة HTTP OPTIONS وجود بيانات في جسم الطلب، وتُشير العلامة "*" إلى طلب معلومات حول الخيارات العامة المتاحة على الخادم بالكامل، ويمكن استخدام "<request-target>" لتحديد المورد، كما تُستخدم "?<query>" لإضافة استفسارات إذا لزم الأمر، ويشير "HTTP/1.1" إلى إصدار البروتوكول المستخدم.
عرض طريقة في Allow يصف قدرات المورد ولا يمنح المستخدم صلاحية تنفيذها؛ تبقى المصادقة والتفويض والتحقق مطلوبة حسب التطبيق. تستخدم طلبات CORS التمهيدية OPTIONS أيضًا مع رؤوس مخصصة لذلك.
How to use OPTIONS method in HTTP
طريقة استخدام OPTIONS في HTTP.
OPTIONS *|<request-target>["?"<query>] HTTP/1.1
HTTP OPTIONS Request Method
طلب معرفة الطرق المدعومة من قبل الخادم لمورد معين مثل صفحة ويب أو API.
OPTIONS /api/resource HTTP/1.1
Host: www.closetag.com
HTTP response message from server
تشير رسالة الاستجابة response أن الطلب قد تم بنجاح وأن الخادم رد بمعلومات حول الطرق المدعومة.
HTTP/1.1 200 OK
Allow: GET, POST, PUT, DELETE, OPTIONS
Content-Length: 0
سجّل الدخول لحفظ تقدمك
تابع إنجاز المواضيع والمصطلحات والمهام، وكمّل من آخر خطوة على أي جهاز.
المصطلحات12
راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.
- 01 HTTP Methods الطرق الخاصة بHTTP
- للمراجعة
- 02 Response الإجابة أو الرد
- للمراجعة
- 03 HEAD Method طريقة الرأس أو العنوان
- للمراجعة
- 04 Head عنوان أو رأس
- للمراجعة
- 05 Entity-Body جسم الكيان أو هيئة الكيان
- للمراجعة
- 06 Date تاريخ
- للمراجعة
- 07 Server خادم
- <p><a href="https://www.closetag.com/tutorial/internet/servers">المزيد عن Server</a></p>
- للمراجعة
- 08 Connection إتصال
- للمراجعة
- 09 POST بريد
- للمراجعة
- 10 PUT وضع أو فرض
- للمراجعة
- 11 CONNECT ربط أو اتصال
- للمراجعة
- 12 OPTIONS خيارات
- للمراجعة
لا توجد بطاقات تطابق البحث والتصفية.
اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.
الاختصارات3
راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.
- 01 HTTP HTTP
- Hypertext Transfer Protocol
- بروتوكول نقل النصوص
- للمراجعة
- 02 URI URI
- Uniform Resource Identifiers
- معرفات موارد موحدة<p><a href="https://www.closetag.com/tutorial/internet/parameters-http">المزيد عن URI</a></p>
- للمراجعة
- 03 URL URL
- Uniform Resource Locator
- عنوان الموقع أو محدد الموقع الموحد<p><a href="https://www.closetag.com/tutorial/internet/browsers">المزيد عن URL</a></p>
- للمراجعة
لا توجد بطاقات تطابق البحث والتصفية.
اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.