Допустим, у меня есть конечная точка для создания объекта, выполнение которого занимает некоторое время и имеет следующую структуру URL: /api/v1/objects
.
Бизнес-правила предписывают, чтобы потребители API могли вызывать эту конечную точку синхронно или асинхронно в сервер. Результатом этого вызова в конце концов является создание одного и того же объекта, но ответ на отправку конечной точки различается между двумя в зависимости от того, вызывается ли она синхронно или асинхронно (т. Е. Если вызов выполняется асинхронно, потребитель может получить идентификатор без гарантии, будет ли объект создан или нет, при одновременном вызове конечной точки всегда будет создаваться объект и возвращаться в ответе.)
Прямо сейчас у меня есть эта структура для различения синхронного и Асинхронные вызовы API:
POST /api/v1/objects
- для синхронного создания объекта. POST /api/v1/objects?async=true
- для асинхронного создания объекта.
Это подход правильный и соответствует принципам RESTFul?