当我向JSON服务器发送HTTP DELETE请求时,不应删除的对象

时间:2019-07-04 13:21:39

标签: angular typescript http http-delete json-server

我试图通过Angular应用中的HTTP DELETE请求发送对象的ID,以删除 JSON 文件中的对象。

这是我的打字稿:

cancelOffer(offerId: number) {
  console.log('OFFER ID: ' + offerId);
  this.offerService.deleteOffer(offerId).subscribe(
    () => {
      console.log('Offer Deleted Successfully');
      this.getAllOffers();
    },
    (err: any) => {
      console.log(err);
      this.errorMessage = <any>err;
    });
}
  • 如果我传递的ID为1,则将删除所有3条记录。
  • 如果我传递ID 3,则会删除上面的记录2和3。

这是我的Offer Service代码:

baseUrl = 'http://localhost:3000/offers';

deleteOffer(id: number): Observable<void> {
    console.log('Delete Offer Called');
    return this.httpClient.delete<void>(`${this.baseUrl}/${id}`)
      .pipe(catchError(this.handleError));
}

当我导航到http://localhost:3000/offers时,将显示以下内容:

[
  {
    "id": 1,
    "managerId": 1,
    "jobId": 2,
    "employeeId": 1
  },
  {
    "id": 2,
    "managerId": 4,
    "jobId": 1,
    "employeeId": 4
  },
  {
    "id": 3,
    "managerId": 8,
    "jobId": 91,
    "employeeId": 1
  }
]

有人可以告诉我为什么我的代码如此行吗,以及我该如何解决?

0 个答案:

没有答案