我的Angular 2 http.post请求有问题。
let body = JSON.stringify({user:'username', passw:'mypass'});
let headers = new Headers();
headers.append('Content-Type', 'application/x-www-form-urlencoded');
this.http.post(`http://localhost:8090/api2/drawing/12345`, body, {headers: headers}) //TODO: remove localhost
.subscribe((res: Response)=>{
this.data = res.json();
console.log(this.data);
})
在我的express-app中,使用bodyparser,请求体看起来像这样:
{ '{"user":"username","passw":"mypass"}': '' }
当我希望它看起来更像这样:
{ user:"username", passw:"mypass" }
我已经像这样配置了bodyParser:
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
我哪里出错?
谢谢!
答案 0 :(得分:0)
您发送的JSON编码正文与Content-Type
application/x-www-form-urlencoded
不匹配。如果您想保留JSON正文,请更改此:
headers.append('Content-Type', 'application/x-www-form-urlencoded');
到此:
headers.append('Content-Type', 'application/json');