热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

HyperTextCoffeePotControlProtocol

The
Hyper Text Coffee Pot Control Protocol

Implementation of HTCPCP at error418.net

Hyper Text Coffee Pot Control Protocol

The Hyper Text Coffee Pot Control Protocol ( HTCPCP ) is a facetious communication protocol for controlling, monitoring, and diagnosingcoffee pots. It is specified in RFC 2324 , published on 1 April 1998 as anApril Fools' Day RFC,as part of anApril Fools prank.An extension, HTCPCP-TEA, was published as RFC 7168 on 1 April 2014to support brewing teas, which is also an April Fools' Day RFC.

Contents

Protocol [ edit ]

RFC 2324 was written by Larry Masinter, who describes it as a satire, saying "This has a serious purpose – it identifies many of the ways in whichHTTP has been extended inappropriately."The wording of the protocol made it clear that it was not entirely serious; for example, it notes that "there is a strong, dark, rich requirement for a protocol designedespressoly [sic] for the brewing of coffee".

Despite the joking nature of its origins, or perhaps because of it, the protocol has remained as a minor presence online. The editorEmacs includes a fully functional client side implementation of it,and a number of bug reports exist complaining aboutMozilla's lack of support for the protocol.Ten years after the publication of HTCPCP, the Web-Controlled Coffee Consortium ( WC3 ) published a first draft of "HTCPCP Vocabulary inRDF"in parody of the World Wide Web Consortium 's (W3C) "HTTP Vocabulary in RDF".

On April 1, 2014, RFC 7168 extended HTCPCP to fully handle teapots.

Commands and replies [ edit ]

HTCPCP is an extension ofHTTP. HTCPCP requests are identified with the Uniform Resource Identifier (URI) scheme coffee (or the corresponding word in any other of the 29 listed languages) and contain several additions to the HTTP methods:

BREW or POST Causes the HTCPCP server to brewcoffee. Using POST for this purpose is deprecated. A new HTTP request header field "Accept-Additions" is proposed, supporting optional additions including Cream, Whole-milk, Vanilla, Raspberry, Whisky, Aquavit, etc.
GET "Retrieves" coffee from the HTCPCP server.
PROPFIND Returnsmetadata about the coffee.
WHEN Says "when" , causing the HTCPCP server to stop pouringmilk into the coffee (if applicable).

It also defines twoerror responses:

406 Not Acceptable The HTCPCP server is unable to provide the requested addition for some reason; the response should indicate a list of available additions. The RFC observes that "In practice, most automated coffee pots cannot currently provide additions."
418 I'm a teapot The HTCPCP server is ateapot; the resulting entity body "may be short and stout" (a reference to the song "I'm a Little Teapot"). Demonstrations of this behaviour exist.

Save 418 movement [ edit ]

On 5 August 2017,Mark Nottingham, chairman of theIETF HTTPBIS Working Group, called for the removal of status code 418 "I'm a teapot" from theNode.js platform, a code implemented in reference to the original 418 "I'm a teapot" established in Hyper Text Coffee Pot Control Protocol.On 6 August 2017, Nottingham requested that references to 418 "I'm a teapot" be removed from the programming languageGo and subsequently fromPython'sRequests andASP.NET's HttpAbstractions libraryas well.

In response, 15 year old developer Shane Brunswick created a website, save418.com,and established the "Save 418 Movement", asserting that references to 418 "I'm a teapot" in different projects serve as "a reminder that the underlying processes of computers are still made by humans". Brunswick's site went viral in the hours following its publishing, garnering thousands of upvotes on the social platformReddit,and causing the mass adoption of the "#save418"Twitter hashtag he introduced on his site. Heeding the public outcry, Node.js, Go, Python's Requests, and ASP.NET's HttpAbstractions library decided against removing 418 "I'm a teapot" from their respective projects. The unanimous support from the aforementioned projects and the general public prompted Nottingham to begin the process of having 418 marked as a reserved HTTP status code,ensuring that 418 will not be replaced by an official status code for the foreseeable future.

See also [ edit ]

Hyper Text Coffee Pot Control Protocol Wikimedia Commons has media related to Coffee pots .

以上所述就是小编给大家介绍的《Hyper Text Coffee Pot Control Protocol》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 我们 的支持!


推荐阅读
author-avatar
菁菁da小姐认_194
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有