Hyper Text Coffee Pot Control Protocol (HTCPCP, гипертекстовый протокол управления кофеваркой) — протокол для управления, слежения и диагностики приборов для приготовления кофе.

HTCPCP описан в RFC 2324, опубликованном 1 апреля 1998 года. Хотя RFC, описывающий протокол, является первоапрельской шуткой и не может приниматься всерьёз, он описывает сам протокол достаточно серьёзно, так, как будто он является действительно существующим. Пока не существует ни одной известной полноценной реализации этого протокола.

HTCPCP является расширением HTTP. Запросы HTCPCP определяются с помощью схемы URI coffee: и содержат несколько добавлений к HTTP-запросам:

  • BREW или POST: заставляет HTCPCP-сервер заваривать кофе.
  • GET: получение кофе от HTCPCP-сервера.
  • PROPFIND: поиск метаданных о кофе.
  • WHEN: Сказав «when», клиент заставляет HTCPCP-сервер завершить добавление молока в кофе (если это возможно).

Также сервер может возвращать ошибки. Ниже представлены их коды:

  • 406 «Not Acceptable» (Ошибка 406: Не приемлемо) — возвращается при ситуации, когда сервер не в состоянии выполнить запрос клиента; ответ сервера при этом должен содержать также перечень видов кофе, доступных для приготовления.
  • 418 «I’m a teapot» (Ошибка 418: Я — чайник) — возвращается при попытке приготовить кофе с помощью чайника.

Как было отмечено Стефаном Мёбиусом, предложенная спецификация протокола HTCPCP имеет тот недостаток, что не предусматривает кода ошибки «Out of Coffee» для случая, когда кофе в кофеварке закончился. Обсуждались возможности расширения спецификации протокола для случаев других напитков: чая, пива, молока и т. п.

Интересные факты

Некоторые веб-фреймворки поддерживают HTTP-статус 418 «I’m a teapot», например Django, Flask (Werkzeug), Symfony, Yii, Spring и Bottle.


Имя:*
E-Mail:
Комментарий: