是否有语言/软件实现http状态代码418?

问题描述 投票:29回答:6

我知道状态代码418被定义为愚人节的笑话,并且“预计不会被实际的HTTP服务器实现”,如Wikipedia所述。

但是,如果你们中的任何人知道支持它的语言/网络服务器/ IDE,我会感兴趣。

我正在尝试Apache(通过php),显然它给我一个内部错误(500)。我只是喜欢它背后的幽默(我不想在这里试图)并且想知道是否不仅仅是Emacs实现了这一点。


更确切地说:它可以在php中模拟,例如通过做类似的事情...

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

...但是你们中的任何人都知道任何实际的服务器软件,或者特别是语言,它本身实现它,其中类似下面的东西不会抛出500,但实际上工作:

http_response_code(418);
http http-status-codes httpserver
6个回答
34
投票

谷歌做到了。

尝试点击茶壶或倾斜移动设备。

www.google.com/teapot


22
投票

Websites that have implemented it

Languages that support it natively

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);

Golang

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

4
投票

是的,它已经实施(由a teapot提供)。

此错误代码是HTCPCP(超文本咖啡壶控制协议)的无效部分。


2
投票

堆栈溢出实现它:

https://meta.stackexchange.com/questions/185426/stack-overflow-returning-http-error-code-418-im-a-teapot

虽然有点创意,但在处理CSRF违规行为时。


2
投票

Go lang的net/http包将HTTP 418状态编码为常量:StatusTeapot


1
投票

我的服务器www.snarked.org,如果路径名开头是“/ coffee”或“/ pot-”后面跟一个数字,或方法BREW或WHEN,或者一个方案等于“coffee:”(实际上是正则表达式)模式“^ [CK] [AO] FF?[EIO] E?$”,涵盖大多数西欧语言)。 60秒后,它将翻到Google最受欢迎的茶壶。

© www.soinside.com 2019 - 2024. All rights reserved.