1). Хранение URI с состояниями навсегда: рассмотрим любой веб-сайт. У него есть несколько страниц. Некоторые удаляются, и мы получаем 404, когда пытаемся получить к ним доступ. Рассмотрим базу данных, скажем, с клиентами в ней. У нашего средства доступа RESTful есть URI, такие как http://myserver/customer/12345 - если клиент был заменен, то мы можем вернуть 404. Мне это кажется вполне разумным. URI являются временными в том, что они могут быть синтаксически действительными, но система имеет четко определенное поведение, если ресурс теперь устарел. Я считаю, что обработка ошибок для остальных услуг является важным фактором. Я обсуждаю это здесь
2). Действия, которые не совсем соответствуют модели REST: я не уверен, является ли PUT или POST наиболее подходящим методом. Как насчет идеи, что ресурс запрос сделать что-то? Таким образом, мы могли бы положить / POST до
http://myserver/request/cacheupdate
Это может вернуть полезную нагрузку запроса, включая уникальный идентификатор (точно так же, как создание клиента может вернуть информацию о клиенте, включая сгенерированный системой идентификатор). Затем ресурс запроса можно использовать для определения того, завершился ли запрос, используя уникальный идентификатор.
http://myserver/request/12345
Это позволяет нам отслеживать состояние длительных запросов.