Задача: У меня есть несколько ресурсов, которые нужно обновить за один вызов HTTP.
Тип ресурса, поле и значение для обновления одинаковы для всех ресурсов.
Пример: есть набор автомобилей по их идентификаторам, необходимо обновить «статус» всех автомобилей на «продано».
Классический подход RESTFul: используйте URL-адрес запроса, например ПУТ /автомобили с телом JSON, например [{id:1,status:sold},{id:2,status:sold},...]
Однако это кажется излишним: слишком много раз ставить status:sold
Ищем способ RESTful (я имею в виду способ, максимально приближенный к «стандартному» протоколу отдыха) для отправки status:soldодин раз для всех автомобилей вместе со списком идентификаторов автомобилей на Обновить. Я бы сделал так:
PUT /cars С JSON {ids=[1,2,...],status:sold}но я не уверен, что это действительно подход RESTful.
Есть идеи?
Также в качестве дополнительного преимущества: я хотел бы иметь возможность избежать JSON для небольшого количества автомобилей, просто настроив URL-адрес с параметрами примерно так:
PUT /cars?ids=1,2,3&status= продано
Достаточно ли этого RESTful?