لیست متدهای http شامل GET, POST, PUT, PATCH, DELETE و تفاوت بین آنها

لیست متدهای http شامل GET, POST, PUT, PATCH, DELETE و تفاوت بین آنها

متد POST

متد POST برای ساختن یک منبع جدید در مجموعه مورد استفاده قرار می‌گیرد. به بیان ساده‌تر ایجاد یک رکورد جدید توسط این متد انجام می‌شود. 

مزایا و معایب استفاده از متد POST عبارتند از:

  • امنیت این روش ارسال اطلاعات بسیار بالا است و اطلاعاتی که کاربر تایپ می‌کند به هیچ عنوان در مرورگر قابل مشاهده نیست، علاوه بر آن، در گزارشات (Logs) سرور هم ذخیره نمی‌شوند.
  • از آن‌جایی که اطلاعات ارسال شده‌ی صفحه با متد POST در URL دیده نمی‌شوند، نمی‌توان آن صفحه را در مرورگر Bookmark کرد.
  • در متد POST محدودیت بسیار بیشتری برای ارسال اطلاعات وجود دارد. به کمک POST می‌توان داده‌های متنی و باینری (آپلود فایل) را ارسال کرد.

 

متد GET

این متد برای خواندن اطلاعات یک منبع ( نه تغییر آنها) بکار گرفته می‌شود. گاهی این متد برای بازگردانی اطلاعاتی به فرمت XML یا JSON نیز کاربرد دارد.

مزایا و معایب استفاده از متد GET عبارتند از:

  • از آن‌جایی که اطلاعات فرستاده شده با متد GET در URL آدرس صفحه نمایش داده می‌شوند، می‌توانید صفحه را با مقادیر query string مورد نظر خود بوک مارک (Bookmark) کنید.
  • متد GET مناسب ارسال اطلاعات حساس و مهمی مثل نام کاربری، رمز عبور، اطلاعات کارت بانکی و… نیست، زیرا اطلاعات به طور کامل در query string آدرس صفحه قابل مشاهده است و اینکه در حافظه مرورگر کاربر به عنوان یک صفحه بازدید شده ذخیره می‌شود.
  • متد GET دیتا را در یک متغیر داخل محیط سرور ذخیره می‌کند؛ به همین دلیل  دارای محدودیت طول میباشد یعنی مقادیر بسیاری را نمیتوان در هر request ارسال کرد (max length = 2048 chars in url).

متد PUT

متد PUT برای بروزرسانی (آپدیت) یک رکورد موجود و یا ساخت یک رکورد جدید (در صورت عدم وجود) کاربرد دارد. این متد مقدار جدید رکورد را در هر درخواست جایگزین می‌کند. یعنی به طور مشابه متد PUT ابتدا یک رکورد را پاک می‌کند و سپس یک رکورد جدید را ایجاد و در مکان رکورد قبلی با مقادیر جدید جایگزین می‌کند. بنابراین اگر چندین فیلد در یک درخواست PUT مقداری نداشته باشند، بدیهی‌ست که پس از آپدیت شدن مقدار null را در خود جایگزین می‌کنند. مثلا اگر یک کاربر دارای فیلدهای نام کاربری و ایمیل باشد و سپس متد PUT درخواستی را ارسال کند که تنها شامل فیلد نام کاربری باشد، فقط این فیلد تغییر می‌کند و فیلد ایمیل مقداری برابر null را دریافت خواهد کرد.

متد PATCH

این متد روشی دیگر برای آپدیت و بروزرسانی رکوردها می‌باشد با این تفاوت که پس از ارسال درخواست، تنها فیلدهایی که دارای مقادیر هستند تغییر می‌کنند و سایر فیلدها به قوت خود باقی می‌مانند. مثلا فرض کنید یک رکورد با نام کاربری و ایمیل در پایگاه داده‌ی خود ذخیره کرده‌اید و حال قصد بروزرسانی آن با متد PATCH را دارید. اگر فیلد نام کاربری را پر کنید و ایمیل را خالی بگذارید و سپس درخواست را ارسال کنید، تنها مقدار فیلد نام کاربری در پایگاه داده تغییر می‌کند و مقدار فیلد ایمیل تغییر نخواهد کرد.

 

متد DELETE

ساده‌ترین متد پروتکل HTTP، متد DELETE می‌باشد که با ارسال این درخواست درکورد موردنظر برای همیشه از پایگاه داده حذف خواهد شد.

 

نویسنده :
مجید پورداود
  • مجید پورداود
  • مهندس نرم افزار و تحلیلگر ارشد سیستم های کامپیوتری تحت وب می باشم. از سال 1395 برنامه نویسی را شروع کردم و به زبان های php (فریم ورک laravel -codeigniter)  و زبان جاوا اسکریپت (فریم ورک express.js-nest.js)  تسلط دارم.  

ثبت دیدگاه جدید

2 دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *
    • pt
        • pt
        • 10 ماه پیش
      • درود بر شما
        موفق باشید.
        سپاسگزار

    • مجید پورداود
        • مجید پورداود
        • 10 ماه پیش
      • درود

        ممنون از شما.