Как удалить Яндекс?
На каждом тренинге происходит что-нибудь забавное. Тренинг без ржачки — деньги на ветер. Я вообще думаю, что нужно больше элементов стендапа добавлять в выступления и на тренинги.
В этот раз на интеграциях дорогие участники спросили — а что будет, если мы попробуем удалить yandex.ru? Ну, в смысле, отправим в http запросе не GET, а DELETE? Ну и мы начали удалять всё подряд! 😂
И вот как по-разному серверы обрабатывают такой запрос:
👉🏻 yandex.ru на любой запрос отвечает: 200 OK, и выдаёт свою страницу. Получить? OK. Удалить? OK, вот вам наша страница. Запостить? OK, вот вам опять наша страница, почитайте. (Тем более, что по адресу yandex.ru сейчас отвечает dzen. Вы читайте, читайте).
👉🏻 google.com по-честному возвращает 405 Method Not Allowed и страницу с ошибкой.
👉🏻 trello.com, который мы используем для отработки вызовов API, возвращает 404 Not Found, что немного странно. По GET возвращает главную страницу, а DELETE — уже не найдено, спрятал.
И, наконец, vk.com выдаёт мою любимую 418 I'm a Teapot! Буду знать теперь, на каком примере её показать. Хотя конечно, строго говоря, в RFC 2324 и протоколе HTCPCP (Hyper Text Coffee Pot Control Protocol) никакого метода DELETE нет, а есть только BREW.
А вы как проектируете выдачу ошибок в http API?
На каждом тренинге происходит что-нибудь забавное. Тренинг без ржачки — деньги на ветер. Я вообще думаю, что нужно больше элементов стендапа добавлять в выступления и на тренинги.
В этот раз на интеграциях дорогие участники спросили — а что будет, если мы попробуем удалить yandex.ru? Ну, в смысле, отправим в http запросе не GET, а DELETE? Ну и мы начали удалять всё подряд! 😂
И вот как по-разному серверы обрабатывают такой запрос:
👉🏻 yandex.ru на любой запрос отвечает: 200 OK, и выдаёт свою страницу. Получить? OK. Удалить? OK, вот вам наша страница. Запостить? OK, вот вам опять наша страница, почитайте. (Тем более, что по адресу yandex.ru сейчас отвечает dzen. Вы читайте, читайте).
👉🏻 google.com по-честному возвращает 405 Method Not Allowed и страницу с ошибкой.
👉🏻 trello.com, который мы используем для отработки вызовов API, возвращает 404 Not Found, что немного странно. По GET возвращает главную страницу, а DELETE — уже не найдено, спрятал.
И, наконец, vk.com выдаёт мою любимую 418 I'm a Teapot! Буду знать теперь, на каком примере её показать. Хотя конечно, строго говоря, в RFC 2324 и протоколе HTCPCP (Hyper Text Coffee Pot Control Protocol) никакого метода DELETE нет, а есть только BREW.
А вы как проектируете выдачу ошибок в http API?