Angular http поставить запрос не отправляя заголовки - PullRequest
0 голосов
/ 11 апреля 2020

Я пытаюсь сделать http-запрос на поставку из angular в node js веб-API, запрос выполнен правильно, проблема в том, что я не получаю значения, отправленные в заголовке в node js, я убедился, что проблема в заголовках запроса http put в angular, потому что я попробовал тот же запрос с тем же заголовком, используя почтальон, и он прошел правильно. Это Angular код:

UpdateRdvById(token){
  let  httpHeader = {
    headers: new HttpHeaders({
       "token": "test2" ,
       "etat":"test"
    })
  } ;
    return this.http.put(this.base_path+"/user/UpdateRdvByID",httpHeader).pipe()
}

Angular журнал после отправки запроса:

n: 0
nModified: 0
opTime: {ts: "6814399187757564185", t: 10}
electionId: "7fffffff000000000000000a"
ok: 1
$clusterTime: {clusterTime: "6814399187757564185", signature: {…}}
operationTime: "6814399187757564185"
__proto__: Object

это node js код:

router.put("/UpdateRdvByID", async (req, res) => {
  try {
    var host = req.headers['token'];
   var etat = req.headers['etat'];
    var query = { _id : host };
console.log('id'+req.headers['token']);
console.log('etat'+req.headers['etat']);
    const rdv = await Rendezvous.updateOne(query,{etat:etat});
    res.json(rdv);
  } catch (err) {
    console.log(err) ;
    res.send({ message: "Error in Fetching rendez vous"+err});
  }
});

и вот проблема в том, что он должен печатать значения из заголовков, но он становится неопределенным. node js Журнал:

idundefined
etatundefined

1 Ответ

1 голос
/ 11 апреля 2020

Первые два аргумента для метода put - это (URL, тело), ​​а третий необязательный - это параметры, которые содержат заголовки, поэтому вам нужно изменить его на: put (this.base_path + "/ user / UpdateRdvByID", null, {httpHeader}).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...