为什么 HttpHeaders 在 POST 请求中不发送 Bareer 令牌?

约瑟夫·博特

我在我的服务中使用它:

import {HttpClient, HttpHeaders} from '@angular/common/http';

我正在尝试用这个做一个帖子:

 public sendInvitation(id):Observable<any>{
    let url = URL_SERVICIOS + '/users/contacts?id=' + id;
    let headers = new HttpHeaders();
    headers.append('Authorization', 'Bearer ' + this.getToken());
    return  this.http
      .post(url , headers)
      .map(res => {
        return res['result'];
      })
      .catch(this.handleError)
  }

但是当我调试时,我看: 1.OPTIONS REQUEST with 200 OK

在此处输入图片说明

  1. POST WITH 401 ,因为令牌不发送

在此处输入图片说明

我试图改变:

.appened.set但这还不起作用

也许我失去了什么?

这很奇怪,因为当我执行 GET 时,它运行良好

  public listContacts(type):Observable<Invitation[]>{
    let url = URL_SERVICIOS + '/users/contacts?type=' + type;
    let headers = new HttpHeaders().set('Authorization','Bearer ' +this.getToken());
    return  this.http
      .get(url , {headers})
      .map(res => {
        return res['result'];
      })
      .catch(this.handleError)
  }

先感谢您

罗希特·哈特里

它应该修复错误:

public sendInvitation(id):Observable<any>{
  let url = URL_SERVICIOS + '/users/contacts?id=' + id;
  let headers = new HttpHeaders();
  headers.set('Authorization', 'Bearer ' + this.getToken());
  return  this.http
    .post(url , {}, {headers: headers})
    .map(res => {
      return res['result'];
    })
    .catch(this.handleError);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章