首页 > 解决方案 > 还有另一种在 URL http Delete 请求上添加 ID 的方法吗?

问题描述

每当我向服务器发送请求(删除具有特定 ID 的项目)时,我都会遇到以下错误:无法删除 /url/url/:id/:16857。我知道它应该看起来像 /url/url/16857 但我不知道问题出在哪里......我从响应中删除了 '/:' 部分,但我仍然快速得到相同的错误,只有没有 '/: '

我创建了一个 Http Delete 请求,如下所示:

function(parameter: Parameter) {
    return new Promise<boolean>( (resolve, reject) => {
      this.http.delete<boolean>(URL+'/:'+parameter.id, Options).subscribe( 
        (res => { resolve(res); }));
    });
  }

在服务器端,我的响应如下:

router.delete('/url/url:id', function (req,res)
{
        //some code
});

标签: javascriptnode.js

解决方案


在http请求中你不需要添加':',你只需要像下面这样:

this.http.delete<boolean>(`${URL}/${parameter.id}`, Options)
    .subscribe(res => { 
        resolve(res); 
     });

我建议你使用模板字符串 ``,最好是引用一个变量。

在您的服务器端,建议:

router.delete('/url/v1/users/:id', (req, res) => {
    // It's referenced automatically to variable if exist in req.body
    const { id } = req.body;
});

我希望它可以帮助你。


推荐阅读