Ответ
Для чтения сущности в REST API используется HTTP-метод GET.
Ключевые характеристики:
- Идемпотентный: Многократные запросы возвращают одинаковый результат.
- Безопасный: Не изменяет состояние ресурса на сервере.
- Кэшируемый: Ответы могут и должны кэшироваться, когда это возможно.
Типичная реализация:
@GetMapping("/users/{id}")
public ResponseEntity<User> getUser(@PathVariable Long id) {
User user = userService.findById(id);
if (user == null) {
return ResponseEntity.notFound().build(); // 404
}
return ResponseEntity.ok(user); // 200 OK
}
Параметры и статусы:
- Параметры передаются через path variables (
/users/{id}) или query params (/users?name=John). - Успех: Возвращает статус
200 (OK)с представлением ресурса в теле ответа. - Не найдено:
404 (Not Found). - Метод
GETне должен иметь тела запроса.