我在使用HTTP GET到Cloudant / NoSQL数据库时遇到Origin http://localhost:3000 is not allowed by Access-Control-Allow-Origin.
错误。
我知道设置Access-Control-Allow-Origin: *
将允许来自localhost
的GET请求,但我看不到Angular 2中专门用于设置标头的文档。
async getData(): Promise<IPost[]> {
return this._http.get(this._postUrl)
.toPromise()
.then(this.extractData)
.catch(this.handleError);
}
IPost[]
是在extractData()
执行后将返回的对象。
感谢任何帮助,感谢您的时间!
答案 0 :(得分:0)
当我想调用REST API时,我通常会使用它。 data是您发送的请求对象。
const HEADERS = new Headers({'Content-Type': 'application/json'});
this.http.post(ENDPOINT, JSON.stringify(data), {headers: HEADERS})
.map(this.extractData)
.subscribe(
payload => {
//do some operation or set values with payload
}
);
这是为了发布电话。如果您想使用GET调用,则不必在角度2侧设置任何标题。仅在后端需要允许对localhost /特定计算机的请求。