Обработка PATCH в Nuxt
POST создаёт новую запись целиком.
Метод PATCH нужен, когда меняют
часть данных: одно поле или несколько,
без повторной отправки всего объекта.
Для него в имени файла пишут
суффикс .patch.
Файл [id].patch.js в server/api/posts
обрабатывает /api/posts/:id
только для PATCH. Параметр id
берут функцией getRouterParam,
новые значения полей - функцией
readBody.
Пример: обновим заголовок поста
с заданным id:
export default defineEventHandler(async (event) => {
const id = getRouterParam(event, 'id');
const body = await readBody(event);
return {
id: Number(id),
title: body.title,
};
});
Клиент шлёт PATCH на /api/posts/2
с JSON { "title": "Updated title" }.
Ответ показывает объект после изменения.
Логику отделения PATCH от POST
важно сохранять: разные методы -
разные файлы и разное назначение.
Сделайте PATCH API для переименования
отдела: в теле передаётся новое
name на английском.
Ответ PATCH должен содержать
id отдела и обновлённое имя.