【发布时间】:2016-05-12 02:29:37
【问题描述】:
所以我遇到了类似的情况,在 Angular 中以this 发送 Http.post。但是,我确实导入了 Header 类,并且我仍然首先获取 text/plain ContentType。这是我所拥有的:
import { Component } from '@angular/core';
import { Http, Headers } from '@angular/http';
import {User} from "../classes/user";
@Component({
selector: 'login',
templateUrl: 'frontend/login/view.html',
styleUrls: ['frontend/login/style.css'],
})
export class LoginComponent {
email: string;
emailError: boolean = false;
password: string;
passwordError: boolean = false;
persist: boolean;
user: User;
constructor(
private _http: Http
) { }
login() {
var headers = new Headers();
headers.append('ContentType', 'application/json');
this.emailError = !this.email;
this.passwordError = !this.password;
if (this.emailError || this.passwordError) { return; }
this._http.post('http://localhost:81/login', JSON.stringify({username: this.email, password: this.password}), { headers: headers })
.map(res => res.json())
.subscribe(
user => this.user = user
);
}
}
有人知道有没有办法去掉这个标题?或者这可能是 Chrome 自己在做的事情?
【问题讨论】:
-
进一步澄清一下,Firefox 似乎也这样做了......但它把它作为第二个标题。所以我会说这不是我的问题,无论哪种情况,我都会收到 400 Bad Request。但是,如果我从 Postman 之类的东西中使用相同的 API。它有效。
-
还有一些进一步的说明......如果我在 Postman 中添加一个文本/纯标题......它失败了......所以也许就是这样......所以回到原来的问题......有人知道如何删除该标题吗?
标签: typescript angular