Kio estas la ĉefa diferenco inter PUT
kaj PATCH
petoj, kaj kiam ni uzu unu super la alia?
PUT kaj PATCH estas HTTP-verboj kaj ambaŭ rilatas al ĝisdatigo de rimedo.
La ĉefa diferenco inter PUT kaj PATCH-petoj estas en la maniero kiel la servilo prilaboras la enfermitan enton por modifi la rimedon identigitan per la Peto-URI.
En PUT
peto, la enfermita ento estas konsiderata kiel modifita versio de la rimedo konservita sur la originala servilo, kaj la kliento petas anstataŭigi la konservitan version.
Kun PATCH
tamen la enfermita ento enhavas aron da instrukcioj priskribantaj kiel rimedo nuntempe loĝanta sur la originala servilo devas esti modifita por produkti novan version.
Ankaŭ alia diferenco estas, ke kiam vi volas ĝisdatigi rimedon per PUT
peto, vi devas sendi la plenan utilan ŝarĝon kiel la peto dum kun PATCH
, vi nur sendas la parametrojn, kiujn vi volas ĝisdatigi.
Rilataj:
Supozu, ke ni havas rimedon, kiu enhavas la antaŭnomon kaj familinomon de persono.
Se ni volas ŝanĝi la antaŭnomon, ni sendas PUT
peto pri Ĝisdatigo
{ 'first': 'Michael', 'last': 'Angelo' }
Ĉi tie, kvankam ni nur ŝanĝas la antaŭnomon, per PUT
peto ni devas sendi ambaŭ parametrojn unue kaj laste. Alivorte, estas devige sendi ĉiujn valorojn denove, la plenan utilan ŝarĝon.
Kiam ni sendos PATCH
peto, tamen ni nur sendas la datumojn, kiujn ni volas ĝisdatigi. Alivorte, ni nur sendas la antaŭnomon por ĝisdatigi, ne necesas sendi la familian nomon.
Tial, PATCH
peto postulas malpli da larĝa bando.