6

Amici e utenti potenziali,Differenza tra codice di stato di risposta http 402 e 403

Abbiamo entrambi i codici di risposta http 402 e 403. Tuttavia, 402 è riservato per uso futuro.

Che cosa è (o sarebbe) la differenza tra questi due. Il pagamento non ricevuto dovrebbe essere uguale a non autorizzato, non dovrebbe?

MODIFICA: Vorrei sapere le risposte su "Perché 402 è richiesto quando abbiamo già 403" di angolo.

risposta

5

403 Forbidden

Il server capito la richiesta, ma si rifiuta di compierla. L'autorizzazione non aiuterà e la richiesta NON DEVE essere ripetuta. Se il metodo di richiesta non era HEAD e il server desidera rendere pubblico perché la richiesta non è stata soddisfatta, DOVREBBE descrivere il motivo del rifiuto nell'entità. Se il server non desidera rendere queste informazioni disponibili al client, è possibile utilizzare il codice di stato 404 (non trovato).

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

Dots questo aiuto?

+0

Grazie Shoban, Ma stavo guardando un "Perché 402 è richiesto quando abbiamo già 403" angolo. –

+2

Perché 402 significherà (in futuro) che la richiesta PU MAY essere ripetuta se il problema del pagamento è in qualche modo risolto. – Tomas

8

Il HTTP StatusCode 402 è davvero diverso da 403:

Come si afferma nella RFC 2616 il codice di stato 402 è

402 Payment Required 

Ciò significa che la richiesta non è generalmente vietato, ma richiede il pagamento.

Apparentemente è stato effettuato il some work per utilizzare questo codice di stato riservato.

Penso che al momento non sia necessario (o semplicemente non usato perché non specificato come usare) ma gli autori dello standard hanno pensato di inserirla in un uso futuro che potrebbe essere utile.

+0

Il secondo collegamento non è corretto, dovrebbe essere http://http402.org, che reindirizza a [questo repository GitHub] (https://github.com/mleonhard/hipp) su Hamming Internet Payment Protocol. – edymtt

+0

grazie, sembra che sia stato aggiornato. Ho aggiornato il collegamento;) – kmindi

0

Nota che mancare un pagamento è solo una delle ragioni per cui il server rifiuta una richiesta. È possibile ottenere lo stato "vietato" in altre situazioni quali credenziali non valide, tentare di accedere a una "risorsa privata", ecc ...

Credo che 402 esista solo per fornire ulteriori dettagli sul motivo per negare una richiesta.