تفاوت بین درخواستهای PUT و PATCH

تفاوت اصلی بین PUT چیست و PATCH درخواست ها ، و چه زمانی باید از یکی بر دیگری استفاده کنیم؟

PUT و PATCH افعال HTTP هستند و هر دو مربوط به بروزرسانی یک منبع هستند.



تفاوت اصلی بین درخواستهای PUT و PATCH

تفاوت اصلی بین درخواست های PUT و PATCH در نحوه پردازش سرور از نهاد محصور شده برای تغییر در منبع شناسایی شده توسط Request-URI است.


در یک PUT درخواست ، موجودیت محصور شده به عنوان یک نسخه اصلاح شده از منبع ذخیره شده در سرور مبدا در نظر گرفته می شود و مشتری درخواست می کند نسخه ذخیره شده جایگزین شود.

با وجود PATCH ، نهاد محصور شده شامل مجموعه ای از دستورالعمل ها است که توصیف می کند چگونه منبعی که در حال حاضر در سرور مبدا قرار دارد باید اصلاح شود تا نسخه جدیدی تولید کند.


همچنین ، تفاوت دیگر این است که وقتی می خواهید منبعی را با PUT به روز کنید درخواست ، شما باید محموله کامل را به عنوان درخواست ارسال کنید در حالی که با PATCH ، شما فقط پارامترهایی را که می خواهید به روز کنید ارسال می کنید.

مربوط:

فرض کنید منبعی داریم که نام و نام خانوادگی یک شخص را در خود جای داده است.

اگر می خواهیم نام کوچک را تغییر دهیم ، یک PUT ارسال می کنیم درخواست به روز رسانی


{ 'first': 'Michael', 'last': 'Angelo' }

در اینجا ، اگرچه ما فقط نام کوچک را تغییر می دهیم ، با PUT درخواست ما باید هر دو پارامتر را برای اولین و آخرین ارسال کنیم. به عبارت دیگر ، ارسال مجدد تمام مقادیر ، بار کامل ، اجباری است.

وقتی ما PATCH ارسال می کنیم درخواست ، با این حال ، ما فقط داده هایی را که می خواهیم به روز کنیم ارسال می کنیم. به عبارت دیگر ، ما فقط نام کوچک را برای به روزرسانی ارسال می کنیم ، نیازی به ارسال نام خانوادگی نیست.

به همین دلیل ، PATCH درخواست به پهنای باند کمتری نیاز دارد.