【发布时间】:2016-02-23 10:58:19
【问题描述】:
我正在使用 POSTMAN 发出一些 POST 请求,如下所示:
这是使用 POSTMAN,它工作得很好。以下也是来自 POSTMAN
POST /supervisor/stop/process HTTP/1.1
Host: bento
Content-Type: application/json
Cache-Control: no-cache
Postman-Token: 66b05631-8b4e-473a-9d3f-deaa544ecac6
{
"ip" : "192.168.1.115",
"port" : "9001",
"process" : "public_video_convert:video_convert_01"
}
我使用 Angular 2 尝试了同样的事情,如下所示:
let url = "http://bento/supervisor/stop/process";
let data = {
"ip": "192.168.1.115",
"port": "9001",
"process": "public_video_convert:video_convert_01"
}
let body = JSON.stringify(data);
let head = new Headers({
'Content-Type': 'application/json'
});
this.http.post(url, body, {headers : head})
.map(res => res.json())
.subscribe(
data => {console.log(data);},
err => console.log(err),
() => console.log('Fetching complete for Server Metrics')
);
当我运行它时,我得到一个405 Method Not Allowed
请求的详细信息以及来自开发工具的响应如下:
我不知道如何处理。
【问题讨论】:
-
我认为
PreFlight请求失败。你控制服务器吗?HTTP OPTIONSreqyests 可能没有在那里启用。