Я бачив, що laravel використовує Route::resource для генерації маршруту для restful архітектури, а оновлення в ньому використовує запити на патчі, тоді як деякі місця радять використовувати put, тож я перевірив
- Оновити всі ресурси
- Метод патчів використовується для оновлення локальних ресурсів
Припустимо, у нас є UserInfo з 10 полями, такими як userId, userName, userGender тощо. Але ваша функція редагування може змінювати ім'я користувача на спеціальній сторінці лише через потреби, як оновити зараз?
Зазвичай люди передають повний об'єкт userInfo з зміненим ім'ям користувача на бекенд для повного оновлення. Але якщо подумати, цей підхід здається трохи двостороннім і справжньою тратою трати пропускної здатності (чисто технічно, якщо тобі байдуже до пропускної здатності, ти місцевий тиран).
Таким чином народився патч, який надсилає лише ім'я користувача на вказаний ресурс, вказуючи, що запит є частковим оновленням, а бекенд оновлює лише отримані поля.
Теоретично, якщо ви використовуєте put, але не надаєте повну UserInfo, то відсутні поля мають бути очищені
PUT:Використовується для створення ресурсу з відомою URL або пароюВідомі ресурси повністю замінені。 Зазвичай він використовується для оновлення відомого ресурсу, якщо ви не знаєте URL об'єкта, який хочете створити, до його створення.
ПОСТ:щоб створити субресурс,Якщо він не ідемпотентний, кілька виконань призведе до створення багатьох однакових ресурсів。 (Сили:У програмуванні ідемпотентна операція характеризується тим, що її довільні множинні виконання мають такий самий ефект, як і одне виконання。 )
ПАТЧ:Він доповнює метод PUT і використовується для роботи з відомими ресурсамиЧасткові оновлення。
|