Есть ли сервер, который реализует код статуса 418 http?

Я знаю, что код статуса 418 был определен как шутка апрельских дураков, и "ожидается, что он не будет реализован фактическими серверами HTTP", как указано в wikipedia (Wiki entry about HTTP-коды).

Но мне было бы интересно, если бы кто-либо из вас знал, сервера, на котором это реализовано.

Я пытался использовать Apache, и, очевидно, у меня была внутренняя ошибка (500). Мне просто нравится юмор за этим (я не пытаюсь троллить здесь) и хотел бы знать, не превышает ли это Emacs это.

Его можно "эмулировать" в php, например, делая что-то вроде этого...

header("HTTP/1.1 418 Whatever text I'd like");

... но кто-нибудь из вас знает реальный сервер, который его реализует, несмотря на то, что этого не ожидается, когда на самом деле будет работать что-то вроде следующего (не выбрасывать 500):

http_response_code(418);

спасибо!

Ответ 1

Серверное программное обеспечение/языки, поддерживающие его по умолчанию

node.js

Как @OlegS. упомянутый в комментарии к вопросу: node.js действительно поддерживает его!

res.send(418)

Отправляет следующий HTTP-заголовок:

HTTP/1.1 418 I'm a teapot
Date: Wed, 25 Feb 2015 07:08:27 GMT
Connection: keep-alive
Transfer-Encoding: chunked

Фактический node.js код, используемый для получения этого ответа:

require('http').createServer(function(q,s) {
    s.writeHead(418);
    s.end();
}).listen(80);

Перейти Lang

http.Error(w, http.StatusText(418), 418)

(Сначала упоминается @MikeAtlas!)

Реализации сервера, которые возвращают этот код состояния

Ответ 2

Google делает это.

Попробуйте щелкнуть по чайнику или наклонить свое мобильное устройство.

www.google.com/teapot

Ответ 3

Да, он реализован (чайник).

Этот код ошибки является бессильной частью HTCPCP (Протокол управления кофе-транспортом Hyper Text).

Ответ 5

Мой сервер, www.snarked.org, делает это, если путь начинается с "/coffee" или "/pot", за которым следует цифра, или методы BREW или WHEN, или схема, приравниваемая к "coffee:" (на самом деле, шаблон регулярного выражения "^ [CK] [AO] FF? [EIO] E? $", который охватывает большинство западноевропейских языков). Через 60 секунд он перевернется на верхний хит Google для чайников.

Ответ 6

Go lang net/http package кодирует HTTP 418 Статус как константу: StatusTeapot.