Ik zag dat Laravel Route::resource gebruikt om een route te genereren voor een restful-architectuur, en de update daarin gebruikt patchverzoeken, terwijl sommige plekken zeggen dat je put moet gebruiken, dus ik heb het gecontroleerd
- Wordt geplaatst om alle bronnen bij te werken
- De patchmethode wordt gebruikt om lokale bronnen bij te werken
Stel dat we een UserInfo hebben met 10 velden zoals userId, userName, userGender, enzovoort. Maar je bewerkingsfunctie kan de gebruikersnaam alleen aanpassen op een speciale pagina vanwege behoeften, hoe kan je op dit moment updaten?
Mensen geven meestal een volledig userInfo-object met de gewijzigde userName door aan de backend voor een volledige update. Maar als je erover nadenkt, voelt deze aanpak een beetje tweesporig en een echte verspilling van bandbreedte (puur technisch gezien, als je niet om bandbreedte geeft, ben je een lokale tiran).
Zo werd patch geboren, die alleen een userName naar de gespecificeerde bron stuurt, wat aangeeft dat het verzoek een gedeeltelijke update is, en de backend alleen de ontvangen velden bijwerkt.
Theoretisch, als je put gebruikt maar geen volledige UserInfo-informatie geeft, zouden de ontbrekende velden verwijderd moeten worden
PUT:Gebruikt om een bron te creëren met een bekende URL of paarBekende bronnen zijn volledig vervangen。 Het wordt meestal gebruikt om een bekende bron bij te werken, tenzij je de URL van het object dat je wilt maken kent voordat je het maakt.
VERZENDEN:om een sub-resource te creëren,Als het niet idempotent is, zullen meerdere uitvoeringen resulteren in het creëren van meerdere identieke resources。 (Krachten:In programmeren wordt een idempotente operatie gekenmerkt door het feit dat willekeurige meervoudige uitvoeringen hetzelfde effect hebben als één enkele uitvoering。 )
PATCH:Het is een aanvulling op de PUT-methode en wordt gebruikt om te functioneren op bekende bronnenGedeeltelijke updates。
|