Вопрос

Как мой Python CGI может вернуть определенный код статуса http, например, 403 или 418?

Я пробовал очевидное (print " Status: 403 Forbidden "), но это не работает.

Это было полезно?

Решение

print 'Status: 403 Forbidden'
print

У меня работает. Тем не менее, вам нужен второй вывод, так как вам нужен двойной перевод строки для завершения заголовков ответа HTTP. В противном случае ваш веб-сервер может жаловаться, что вы не отправляете ему полный набор заголовков.

sys.stdout('Status: 403 Forbidden\r\n\r\n')

может быть технически более правильным, согласно RFC (при условии, что ваш скрипт CGI не работает в текстовом режиме в Windows). Однако оба конца строки, кажется, работают везде.

Другие советы

Полагаю, вы ищете send_error / код> . Он будет расположен в http. сервер в py3k.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top