موصى به, 2021

اختيار المحرر

الفرق بين GET وطريقة POST في HTML

GET و POST هما تقنيتان فعالتان تستطيعان إرسال البيانات إلى الخادم والمتصفح تحتاج بالضرورة إلى هذه الاتصال بالخادم. الطريقتين مختلفتان حيث تقوم طريقة GET بإضافة البيانات المشفرة إلى URI بينما في حالة POST method يتم إلحاق البيانات بالجسم بدلاً من URI. بالإضافة إلى ذلك ، يتم استخدام طريقة GET لاسترداد البيانات. على العكس ، يتم استخدام طريقة POST لتخزين أو تحديث البيانات.

تُستخدم علامة النموذج للتعبير عن محتوى النموذج ؛ هذا هو المعروف أيضا باسم التحكم في النموذج . تمتلئ هذه النماذج فيما يتعلق بالبيانات ثم إرسالها إلى الجهاز البعيد لمزيد من المعالجة. يشمل عمل النموذج أمرين هامين: الأول هو مواصفات عنوان البرنامج الذي يتعامل مع محتويات النموذج بمساعدة ACTION . لاحقاً هي مواصفات الأسلوب الذي يتم فيه تدفق بيانات النموذج بمساعدة سمة METHOD .

تصف سمة ACTION كيفية معالجة نموذج HTML. تقوم خاصية METHOD بإدارة عملية إرسال البيانات. تأتي طريقة GET و POST تحت سمة METHOD.

رسم بياني للمقارنة

أساس للمقارنةاحصل علىبريد
يتم وضع المعلمات في الداخلURIالجسم
غرضاسترجاع الوثائقتحديث البيانات
نتائج الاستعلامقادر على أن تكون مرجعية.لا يمكن أن تكون مرجعية.
الأمانعرضة للخطر ، كما هو موجود في نص عاديأكثر أمانا من طريقة GET
قيود نوع بيانات النموذجيتم السماح فقط بأحرف ASCII.
لا توجد قيود ، حتى البيانات الثنائية مسموح بها.
طول بيانات النموذجيجب أن تبقى أدنى حد ممكن.يمكن أن تكمن في أي نطاق.
رؤيةيمكن أن ينظر إليه من قبل أي شخص.لا يعرض المتغيرات في عنوان URL.
حجم متغيرما يصل إلى 2000 حرف.تصل إلى 8 ميجا بايت
التخزين المؤقتيمكن تخزين بيانات الطريقة مؤقتًا.لا مخبأ البيانات.

تعريف طريقة GET

تُستخدم طريقة GET لطلب عنوان URL من خادم ويب لجلب مستندات HTML. إنها طريقة تقليدية للمتصفحات لتسليم المعلومات التي تحسب كجزء من بروتوكول HTTP. تمثل طريقة GET في شكل عنوان URL ، بحيث يمكن وضع إشارة مرجعية لها. يستخدم GET على نطاق واسع في محركات البحث. بعد تقديم استعلام من قبل المستخدم إلى محرك البحث ، يقوم المحرك بتنفيذ الاستعلام ويعطي الصفحة الناتجة. يمكن تعيين نتائج الاستعلام كرابط (إشارة مرجعية).

تمكن طريقة GET توليد المراسي ، مما يساعد في الوصول إلى برنامج CGI مع الاستعلام الذي يجنب استخدام النموذج. يتم إنشاء الاستعلام في ارتباط ، لذلك عند زيارة الارتباط ، سيقوم برنامج CGI باسترداد المعلومات المناسبة من قاعدة البيانات.

يحتوي أسلوب GET على بعض مشكلات الأمان لأن البيانات المدرجة مرئية في عنوان URL. يمكن تمرير كمية محدودة من البيانات فقط عبر طريقة GET ، لأن طول عنوان URL الذي يستطيع المتصفح اجتيازه قد يكون ألف حرف.

قضية أخرى بخصوص طريقة GET هي أنه لا يمكن التعامل مع اللغات الأجنبية. طريقة GET غير مقترحة لاستخدامها ولكن مع عدم تحديد سمات الطريقة يتم استخدام GET كطريقة افتراضية.

تعريف طريقة POST

طريقة POST مناسبة في الحالة حيث يمكن أن تمر كمية كبيرة من المعلومات. عندما يتلقى الخادم الطلب بواسطة نموذج يستخدم POST ، فإنه يستمر في "الاستماع" للمعلومات اليسرى. بكلمات بسيطة ، تقوم الطريقة بنقل جميع المعلومات ذات الصلة من إدخال النموذج فورًا بعد تقديم الطلب إلى عنوان URL.

تحتاج طريقة POST إلى إنشاء اتصالين مع خادم الويب بينما تقوم GET بإنشاء واحدة. تتم إدارة الطلبات في POST بنفس الطريقة التي تتم إدارتها في طريقة GET حيث يتم تمثيل المسافات في علامة الجمع (+) ويتم ترميز أحرف الاستراحة في نمط عنوان URL. ويمكنه أيضًا إرسال عناصر الملف.

الاختلافات الرئيسية بين GET وطريقة POST في HTML

  1. يضع أسلوب GET المعلمات داخل URI بينما يلحق أسلوب POST المعلمات في الجسم.
  2. يتم استخدام GET بشكل أساسي لجلب المعلومات. في مقابل ذلك ، فإن الغرض من طريقة POST هو تحديث البيانات.
  3. لا يمكن وضع إشارة مرجعية على نتائج طلب POST في حين أن نتائج طلب GET يمكن وضع إشارة مرجعية لها لأنها موجودة في شكل عنوان URL.
  4. في طريقة GET ، تكون المعلومات مرئية في عنوان URL الذي يزيد من نقاط الضعف وخطر الاختراق. في المقابل ، لا تُظهر طريقة POST المتغير في URL ويمكن أيضًا استخدام تقنيات التشفير المتعددة فيه ، مما يجعله مرنًا.
  5. عند استخدام أسلوب GET في النموذج ، يتم قبول أحرف ASCII فقط في أنواع البيانات. على العكس ، لا تقوم طريقة POST بربط أنواع بيانات النموذج وتسمح بالحروف الثنائية بالإضافة إلى حروف ASCII.
  6. حجم المتغير في أسلوب GET هو 2000 حرفًا تقريبًا. عكسيا ، طريقة POST تسمح بحجم متغير يصل إلى 8 ميجا بايت.
  7. تكون بيانات أسلوب GET قابلة للتخزين المؤقت بينما لا تكون بيانات طريقة POST.


مثال على GET

عندما يدخل المستخدم أي عنوان URL في شريط الموقع في المتصفح ، مثل http // www.example.com / xyz / file1.htm . ثم يتم تحويل العنوان إلى طلب HTTP GET صالح ، على سبيل المثال ، GET / xyz / file1.htm HTTP / 1.0 .

ثم يتم نقل هذا الطلب إلى الخادم www.example.com . يطلب طلب الملف file1.htm في الدليل xyz ، وما إذا كان الاتصال باللهجة 1.0 HTTP. هنا لا يحصل المستخدم على الملف من تلقاء نفسه بعد إرسال الملف ، في الواقع يتم تشغيل البرنامج في الخلفية للتعامل مع بيانات النموذج.

يتطلب المستخدم لتمرير بيانات النموذج مع اسم البرنامج لتنفيذه. لتحقيق هذا التنفيذ ، يتم إلحاق معلومات النموذج بعنوان URL المطلوب. ينشئ URL يحتوي على مائة حرف مع البيانات الفعلية ، على سبيل المثال ، //www.example.com/cgi-x/comments.exe؟Name=AI+Alena&Age=23&Gender=female .

مثال على POST

يمكن أن تظهر البيانات المرسلة بواسطة نموذج مثل الاسم = AI + Alena & Age = 23 & Gender = female . يعالج البرنامج البيانات عن طريق تقسيم البيانات. يمكن ترميز بيانات النموذج بشكل مختلف باستخدام سمة ENCTYPE في طريقة POST.

لا تظهر محتويات النموذج عادة في عنوان URL وتتمثل الميزة الرئيسية في أنه يمكن تقديم كمية كبيرة من البيانات باستخدام طريقة POST.

استنتاج

تُستخدم طريقة GET و POST لإرسال البيانات إلى الخادم ، والفرق الرئيسي بينهما هو أن أسلوب GET يضيف البيانات إلى معرف URI المحدد في سمة إجراء النموذج. على العكس ، طريقة POST تعلق البيانات إلى الجسم المطلوب. استخدام أسلوب GET غير مناسب عند الحاجة إلى ملء المعلومات الحساسة في النموذج. يكون أسلوب POST مفيدًا عندما يطلب المستخدم ملء كلمات المرور أو أي معلومات سرية أخرى.

Top