Есть ли сервер, который реализует код статуса 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).
Ответ 4
Переполнение стека реализует его:
https://meta.stackexchange.com/questions/185426/stack-overflow-returning-http-error-code-418-im-a-teapot
хотя и немного креативен, когда имеет дело с нарушениями CSRF.
Ответ 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
.