Философия REST: метод WS с побочным эффектом вместо доступа к ресурсам

Я спрашиваю об этом: я использую веб-сервис REST в большей степени на архитектуре веб-интерфейса, чем клиент-сервер, потому что теперь это просто с SpringBoot и стандартным. Но я обнаружил, что логика, ориентированная на ресурсы, довольно ограничена и не позволяет мне делать то, что я мог бы сделать с помощью SOAP или RPC (вызывать любой метод, чтобы не только получить доступ к ресурсам).

1) Мой вопрос: как я могу сделать что-то вроде:

@PostMapping
public Object migrateDataBetweenToDatabase() {
    // Database configurations and location in application properties
    Object res = myService.migrateData();
    return res;
}

2) Еще один вопрос, более RESTful, я думаю: если у меня есть несколько объектов для создания:

@PostMapping
public Object create(@RequestBody Object objectToCreate) {
    // ...
}

Как сделать соответствующее обновление? Для одного обновления это будет:

@PutMapping(path = {/{id})
public Object importObjects(@RequestBody Object objectToUpdate) {
    // ...
}

А для многократного обновления?

@PutMapping
public Object importObjects(@RequestBody List<Object> objectsToUpdate) {
    // ...
}

Это правильно?

РЕДАКТИРОВАТЬ: И если я хочу иметь метод updateAParticularField()что должно быть: поставить / патч без @PathPvariable Я бы? Или такой метод не должен существовать и быть общим обновлением PATCH (@PathVariable("id") int objectId, @RequestBody ObjectDTO objectDTO)

Благодарю.

0 ответов

Другие вопросы по тегам