Я пытаюсь отправить HTTP-запросы на JSON-сервер в моем приложении Angular, чтобы обновить файл JSON.
Когда я пытаюсь удалить один объект job
, удаляются несколько заданий, а нетот, который я указал.
Вот мой Job Service
метод удаления кода:
baseUrl = 'http://localhost:3000/jobs';
deleteJob(id: number): Observable<void> {
return this.httpClient.delete<void>(`${this.baseUrl}/${id}`)
.pipe(catchError(this.handleError));
}
А вот и мой файл JSON:
"jobs": [
{
"id": 1,
"title": "UI UX",
"description": "DESC",
"employeeId": "2",
"managerId": "1",
"imageUrl": ""
},
{
"id": 2,
"title": "devops",
"description": "asdf",
"employeeId": "1",
"managerId": "13",
"imageUrl": ""
},
{
"id": 3,
"title": "asdf",
"description": "adf",
"employeeId": "",
"managerId": "1",
"imageUrl": ""
},
{
"id": 6,
"title": "asdf",
"description": "adf",
"employeeId": "",
"managerId": "1",
"imageUrl": ""
}
],
Если япередайте 6 в качестве идентификатора методу deleteJob()
.Вместо удаления только этого объекта задания, задания с идентификаторами 2,3 и 6 удаляются, и это печатается в консоли:
УДАЛИТЬ / jobs / 6
IЯ подумал, что проблема может быть связана с baseUrl
, потому что он не определяет атрибут id
.
Итак, я попытался это сделать:
deleteUrl = 'http://localhost:3000/jobs/id';
deleteJob(id: number): Observable<void> {
return this.httpClient.delete<void>(`${this.deleteUrl}/${id}`)
.pipe(catchError(this.handleError));
}
Но сейчас нет jobs
удаляются, и я получаю это сообщение в консоли:
УДАЛИТЬ / jobs / id / 6 404 (не найдено)
Может кто-нибудь, пожалуйста, скажите мне, почемутакое поведение происходит и как я могу решить это?