Видях, че laravel използва Route::resource за генериране на маршрут за restful архитектура, а ъпдейтът в него използва patch requests, докато някои места казват да се използва put, затова проверих
- Въведено за актуализиране на всички ресурси
- Методът patch се използва за актуализиране на локални ресурси
Да кажем, че имаме UserInfo с 10 полета като userId, потребителско име, userGender и т.н. Но функцията за редактиране може да променя потребителското име само в специална страница поради нужди, как да актуализирате в този момент?
Хората обикновено предават пълен userInfo обект, съдържащ промененото потребителско име, към бекенда за пълна актуализация. Но ако се замислиш, този подход изглежда малко двупосочен и истинска загуба на пропускателна лента (чисто технически, ако не ти пука за честотната лента, си местен тиранин).
Така се появи пачът, който изпраща само потребителско име към посочения ресурс, което показва, че заявката е частична актуализация, а бекендът обновява само получените полета.
Теоретично, ако използвате put, но не предоставяте пълна UserInfo, липсващите полета трябва да бъдат изчистени
PUT:Използва се за създаване на ресурс с известен URL адрес или двойкаИзвестните ресурси са напълно заменени。 Обикновено се използва за актуализиране на известен ресурс, освен ако не знаете URL адреса на обекта, който искате да създадете, преди да го създадете.
ПУБЛИКАЦИЯ:за създаване на подресурс,Ако не е идемпотентно, множество изпълнения ще доведат до създаване на множество идентични ресурси。 (Сили:В програмирането идемпотентната операция се характеризира с това, че нейните произволни многократни изпълнения имат същия ефект като едно изпълнение。 )
ПАЧ:Той е допълнение към метода PUT и се използва за изпълнение на известни ресурсиЧастични актуализации。
|