我不明白我做错了什么,当我尝试获取 json 时,我的服务器返回“未定义”。
POST(url, data) {
var headers = new Headers(), authtoken = localStorage.getItem('authtoken');
headers.append("Content-Type", 'application/json');
if (authtoken) {
headers.append("Authorization", 'Token ' + authtoken)
}
headers.append("Accept", 'application/json');
var requestoptions = new RequestOptions({
method: RequestMethod.Post,
url: this.apiURL + url,
headers: headers,
body: data
})
return this.http.request(new Request(requestoptions))
.map((res: Response) => {
if (res) {
return { status: res.status, json: res.json() }
}
});
}
我的功能:
login(username, password) {
this.POST('login/', {test: 'test'}).subscribe(data => {
console.log(data)
})
}
当我尝试这个时,请求正文如下所示:
因此,它不发送实际的 json,而是发送“[object Object]”。而不是“请求有效负载”,它应该是“JSON”。我究竟做错了什么?
原文由 Sebastian Olsen 发布,翻译遵循 CC BY-SA 4.0 许可协议
您需要对有效负载进行字符串化