DELETE

Metoda HTTP

Specificarea metodei HTTP DELETE

Metoda DELETE solicită ca serverul de origine să elimine asocierea dintre resursa țintă și funcționalitatea sa curentă. De fapt, această metodă este similară comenzii rm din UNIX: ea exprimă o operațiune de ștergere a corespondenței URI a serverului de origine mai degrabă decât o așteptare ca informațiile asociate anterior să fie șterse.

Dacă resursa țintă are una sau mai multe reprezentări actuale, acestea pot fi sau nu distruse de serverul de origine, iar spațiul de stocare asociat poate fi sau nu recuperat, în funcție în întregime de natura resursei și de implementarea acesteia de către serverul de origine (care depășesc domeniul de aplicare al prezentei specificații). De asemenea, alte aspecte ale implementării unei resurse ar putea necesita dezactivarea sau arhivarea ca urmare a unei ștergeri, cum ar fi conexiunile la baza de date sau la gateway. În general, se presupune că serverul de origine va permite DELETE numai pentru resursele pentru care are un mecanism prescris pentru a realiza ștergerea.

Rarelativ puține resurse permit metoda DELETE - utilizarea sa primară este pentru mediile de autor la distanță, unde utilizatorul are o anumită direcție cu privire la efectul său. De exemplu, o resursă care a fost creată anterior folosind o cerere PUT sau identificată prin câmpul antetului Location după un răspuns 201 (Created) la o cerere POST, ar putea permite ca o cerere DELETE corespunzătoare să anuleze aceste acțiuni. În mod similar, implementările personalizate ale agenților utilizator care pun în aplicare o funcție de autor, cum ar fi clienții de control al reviziei care utilizează HTTP pentru operațiuni la distanță, ar putea utiliza DELETE pe baza unei presupuneri că spațiul URI al serverului a fost creat pentru a corespunde unui depozit de versiuni.

Dacă o metodă DELETE este aplicată cu succes, serverul de origine AR TREBUI să trimită un cod de stare 202 (Acceptat) dacă acțiunea va reuși probabil, dar nu a fost încă pusă în aplicare, un cod de stare 204 (Fără conținut) dacă acțiunea a fost pusă în aplicare și nu trebuie furnizate informații suplimentare sau un cod de stare 200 (OK) dacă acțiunea a fost pusă în aplicare și mesajul de răspuns include o reprezentare care descrie starea.

O sarcină utilă în cadrul unui mesaj de solicitare DELETE nu are o semantică definită; trimiterea unui corp de sarcină utilă într-o solicitare DELETE poate determina unele implementări existente să respingă solicitarea.

Răspunsurile la metoda DELETE nu pot fi stocate în cache. Dacă o cerere DELETE trece printr-un cache care are unul sau mai multe răspunsuri stocate pentru URI-ul cererii efective, aceste răspunsuri stocate vor fi invalidate (a se vedea secțiunea 4.4 din [RFC7234]).

Metoda HTTP DELETE a fost specificată în secțiunea 4.3.5 din documentul RFC 7231 de către Internet Engineering Task Force (IETF) și World Wide Web Consortium (W3C).

Descrierea metodei DELETE

lucrări în curs

Exemplu pentru metoda HTTP DELETE

Request header:
DELETE /data/item/123 HTTP/1.1
Host: api.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)Chrome/58.0.3029.110 Safari/537
Authorization: Bearer YOUR_ACCESS_TOKEN
Accept-Language: de-DE,de;q=0.5
Connection: keep-alive
Response header:
Content-Type: application/json
Date: Mon, 31 July 2023 14:58:12 GMT
Server: Apache/2.4.7 (Ubuntu)
Cache-Control: no-store