Angular 6 - HTTP响应200在订阅中为空

时间:2018-06-09 23:54:41

标签: angular post angular6 angular-httpclient

我有以下用于调用http.service.ts API的Angular /login

login(user: User) {
    console.log("logging in");
    console.log(JSON.stringify(user));
    this.http
        .post<any>(this.loginURL, user, httpOptions)
        .subscribe(
            res => console.log('response : ' + res),
            err => console.log('error : ' + err))
}

这是一个非常标准的POST来电,但它始终会返回null,我无法理解。 这是Network Google Chrome的标签信息

enter image description here

Chrome的Console信息

enter image description here

我无法理解回复为null的原因。即使我没有有效负载,它至少应该使headers可用吗?

2 个答案:

答案 0 :(得分:8)

尝试以下方法:

this.http.post("url", body, {headers: headers, observe: "response"})
   .subscribe(res => console.log(res));

您可以使用相同的http选项,但添加观察:response。标头是来自http客户端的HttpHeaders。例如:headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded')

答案 1 :(得分:0)

尝试以下方法,

this.http.post(loginUrl,user,httpOptions).map( res =>res).subscribe(data => {
  console.log(data);
});