Czasownik HTTP MODIFY dla REST?

O ile mi wiadomo, nie ma sposobu RESTful, aby zastosować modyfikację zasobu. Aby to zrobić, musisz PUT zasilić jako całość, zastępując poprzednią reprezentację. Myślę, że jest to źródłem problemów, zwłaszcza gdy zasób ma dużą reprezentację.

Wierzę, że to wskazuje na brak czasownika w HTTP1.1: coś takiego jak MODIFY lub PATCH. Nawet WebDAV nie ma tego czasownika (ma PROPPATCH, którego koncepcja jest podobna, ale nie dotyczy zasobów).

Czy bieżący zestaw czasowników HTTP 1.1 nie jest zbyt ograniczony do RESTOWANIA w prawdziwym świecie?

Edytować: Znalazłem propozycję w IETF na temat czasownika PATCH

http://tools.ietf.org/html/draft-dusseault-http-patch-15

Ta specyfikacja definiuje nową metodę PATCH HTTP / 1.1 [RFC2616], która jest używana do stosowania częściowych modyfikacji zasobu.

Nowa metoda jest niezbędna do poprawy interoperacyjności i zapobiegania błędom. Metoda PUT jest już zdefiniowana, aby zastąpić zasób kompletnym nowym obiektem i nie można go ponownie użyć do częściowych zmian. W przeciwnym razie serwery proxy i pamięci podręczne, a nawet klienci i serwery mogą być zdezorientowani co do wyniku operacji. PATCH został wspomniany we wcześniejszych specyfikacjach HTTP, ale nie został całkowicie zdefiniowany.

O ile mi wiadomo, jedynym problemem takiego czasownika jest brak idempotencji.

Edytować: Od marca 2010 r. Istnieje RFC 5789 (Metoda PATCH dla HTTP).

questionAnswers(4)

yourAnswerToTheQuestion