Are there languages/software that implements http status code 418?
-
21-12-2019 - |
Question
I know that status code 418 was defined as a April Fools' joke, and "is not expected to be implemented by actual HTTP servers" as is stated on Wikipedia.
But I would be interested if any of you knew of a language/webserver/IDE that supports it.
I was trying on Apache (via php), and obviously it got me an internal error (500). I just like the humor behind it (am not trying to troll here) and would like to know if more than just Emacs implements this.
More precisely: It could be emulated in php for example by doing something like ...
header("HTTP/1.1 418 Whatever text I'd like");
... but do any of you know any actual server software, or language in particular, that implements it natively, where something like the following would not throw a 500, but actually work:
http_response_code(418);
Solution 2
Websites that have implemented it
- Google - www.google.com/teapot - (Details from @ButtleButkus)
- Stackoverflow on CSRF violations - Meta question about it - (Details from @ImmortalBlue)
- A teapot - joereddington.com/projects/418.. - (Details from @MegaTom)
- Snarked - www.snarked.org/coffee - (Details from @MR.X)
Languages that support it natively
node.js
res.send(418)
Sends following HTTP header:
HTTP/1.1 418 I'm a teapot
Date: Wed, 25 Feb 2015 07:08:27 GMT
Connection: keep-alive
Transfer-Encoding: chunked
The actual node.js code used to get this response was:
require('http').createServer(function(q,s) {
s.writeHead(418);
s.end();
}).listen(80);
Golang
http.Error(w, http.StatusText(418), 418)
OTHER TIPS
Stack overflow implements it:
albeit, a little creative, when dealing with CSRF violations.
Go lang's net/http
package codifies HTTP 418 Status as a constant: StatusTeapot
.
My server, www.snarked.org, does it if the pathname begins "/coffee" or "/pot-" followed by a digit, or methods BREW or WHEN, or a scheme equating to "coffee:" (actually, the regex pattern "^[CK][AO]FF?[EIO]E?$" which covers most western-European languages). After 60 seconds, it rolls over to Google's top hit for teapots.