请任何人帮助我。
此错误发生在Mozila:
阻止跨源请求:同源策略禁止在https://api.uber.com/v1/products?latitude=12.9716&longtitude=77.5946读取远程资源。 (原因:在CORS预检频道的CORS标题'Access-Control-Allow-Headers'中遗漏了令牌'access-control-allow-headers'。)
此错误发生在Chrom:
XMLHttpRequest无法加载https://api.uber.com/v1/products?latitude=12.9716&longtitude=77.5946。请求标头字段Access-Control-Allow-Origin在预检响应中不允许使用Access-Control-Allow-Origin。 我不确定它的起源不匹配或标头中没有分配令牌,我不使用oauth我只想用uber api服务器提供的服务器令牌进行身份验证。
这是我的代码: client.service.ts
getProduct(lat:number,lon:number){
let endpoint = 'https://api.uber.com/v1/products';
let url = `${endpoint}?latitude=${lat}&longtitude=${lon}`;
let headers = new Headers();
headers.append('Authorization','GHGz3fI-A3JUTszn3Qvil6FqatWUlyxw6OHB14Jh');
headers.set('Access-Control-Allow-Origin', '*');
headers.get('Access-Control-Allow-Origin');
headers.append('Access-Control-Allow-Headers','x-requested-with, Content-Type, origin, authorization, accept, client-security-token');
headers.get('Access-Control-Allow-Headers');
return this.http.get(url, {headers})
.map(res => res.json());
}
client.component.ts
getProduct(){
this._countryService.getProduct(this.lat, this.long )
.subscribe(
data=> this.row = data,
error =>this.error = "location" + this.lat + this.long + "invalid."
);
}
任何人都可以告诉我我在这里分配的服务器令牌是否正确?
注意:我正在使用@ angular / http包
提前致谢