Python CGI che restituisce un codice di stato http, come 403?
-
05-07-2019 - |
Domanda
In che modo il mio cgi python può restituire un codice di stato http specifico, come 403 o 418?
Ho provato l'ovvio (stampa " Stato: 403 proibito ") ma non funziona.
Soluzione
print 'Status: 403 Forbidden'
print
Funziona per me. Tuttavia, è necessaria la seconda stampa, poiché è necessaria una doppia riga per terminare le intestazioni di risposta HTTP. Altrimenti il ??tuo server web potrebbe lamentarti di non avergli inviato un set completo di intestazioni.
sys.stdout('Status: 403 Forbidden\r\n\r\n')
potrebbe essere tecnicamente più corretto, secondo RFC (supponendo che lo script CGI non sia in esecuzione in modalità testo su Windows). Tuttavia, entrambi i finali di linea sembrano funzionare ovunque.
Altri suggerimenti
Credo che tu stia cercando send_error
. Si troverebbe in http. server
in py3k.