Angular消耗nodejs Web api,错误的请求

问题描述 投票:0回答:1

我的角度应用程序消耗了nodejs webapi:

var header = {
        headers: new HttpHeaders()
          .set('Authorization',  `Bearer ${this.token}`)
      }


      var url="http://localhost:3000/user/deleteTodoFromUser/"+idUser+"/"+idTodo;
      return this.http.put(url,"",header); 

我的api:

**router.put('/deleteTodoFromUser/:id/:idTodo', passport.authenticate('bearer'), (req, res) => {**

 User.findByIdAndUpdate(req.params.id,{ $pull:{todos:{$in:[req.params.idTodo]}}},{new:true},(err, usr) => {
       if (err) { 
            res.send(err);
        } 
        if(usr)
        {
        res.send(usr);
        }
        else
        {
            res.status(400).send("bad request");
        } 

**我的api在邮递员中正常工作**

**已启用CORS **

角度不,它返回400(错误请求)

node.js angular
1个回答
1
投票

400错误的请求,无论端点期望什么,都无法实现。将参数传递给您的API时似乎出现了问题:你可以试试这个吗:

const headers = new HttpHeaders()
          .set('Authorization',  `Bearer ${this.token}`);

let params = new HttpParams();
params = params.append('id', idUser);
params = params.append('idTodo', idTodo);

this.http.put(url, "", { headers: headers, params: params });
© www.soinside.com 2019 - 2024. All rights reserved.