HTTP چیست؟
پروتکل انتقال Hypertext (HTTP) برای فعال کردن ارتباطات بین کلاینت ها و سرورها طراحی شده است.
HTTP به عنوان یک پروتکل درخواست پاسخ بین مشتری و سرور کار می کند.
مثال: مشتری (مرورگر) درخواست HTTP را به سرور ارسال می کند. سپس سرور پاسخی به مشتری می دهد. پاسخ حاوی اطلاعات وضعیت مربوط به درخواست است و همچنین ممکن است حاوی محتوای درخواستی باشد.
روشهای HTTP
- گرفتن
- پست
- قرار دادن
- سر
- حذف
- وصله
- گزینه ها
دو متداول ترین روش های HTTP عبارتند از: GET و POST.
روش GET
GET برای درخواست داده از یک منبع مشخص استفاده می شود.
GET یکی از متداول ترین روشهای HTTP است.
توجه داشته باشید که رشته کوئری (جفت نام / مقدار) در URL درخواست GET ارسال می شود:
/test/demo_form.php?name1=value1&name2=value2
برخی دیگر از یادداشت ها در مورد درخواست های GET:
- درخواست های GET قابل ذخیره هستند
- درخواست های GET در تاریخچه مرورگر باقی می مانند
- درخواست های GET می توانند نشانه گذاری شوند
- از درخواست های GET هرگز نباید هنگام کار با داده های حساس استفاده شود
- درخواست های GET دارای محدودیت های طول هستند
- درخواست های GET فقط برای درخواست داده استفاده می شود (اصلاح نمی شود)
روش POST
POST برای ارسال داده ها به سرور برای ایجاد / به روزرسانی یک منبع استفاده می شود.
داده های ارسال شده به سرور با POST در متن درخواست درخواست HTTP ذخیره می شود:
POST /test/demo_form.php HTTP/1.1 Host: w3schools.com name1=value1&name2=value2
POST یکی از متداول ترین روشهای HTTP است.
برخی دیگر از یادداشت ها در مورد درخواست های POST:
- درخواست های POST هرگز ذخیره نمی شوند
- درخواست های POST در سابقه مرورگر باقی نمی ماند
- درخواست POST را نمی توان نشانه گذاری کرد
- درخواستهای POST هیچ محدودیتی در طول داده ندارند
روش PUT
PUT برای ارسال داده ها به سرور برای ایجاد / به روزرسانی یک منبع استفاده می شود.
تفاوت POST و PUT در بی کاربرد بودن درخواستهای PUT است. یعنی اینکه چندین بار با همان درخواست PUT تماس بگیرید ، همیشه نتیجه یکسانی ایجاد می کند. در مقابل ، فراخوانی یک درخواست POST به طور مکرر دارای عوارض جانبی ایجاد چندین منبع یکسان است.
روش HEAD
HEAD تقریباً مشابه GET است ، اما بدون بدن پاسخ دهنده است.
به عبارت دیگر ، اگر GET / کاربران لیستی از کاربران را برگرداند ، در آن صورت HEAD / کاربران همان درخواست را می کنند اما لیست کاربران را بر نمی گردانند.
درخواست های HEAD برای بررسی اینکه یک درخواست GET قبل از درخواست GET چه چیزی بازگرداند مفید است – مانند قبل از بارگیری یک پرونده بزرگ یا متن پاسخ.
روش حذف
روش DELETE منبع مشخص شده را حذف می کند.
روش OPTIONS
روش OPTIONS گزینه های ارتباطی برای منبع هدف را توصیف می کند.
مقایسه GET و POST
جدول زیر دو روش HTTP را با هم مقایسه می کند: GET و POST.