在我的angular2应用程序

时间:2016-05-11 11:40:00

标签: authentication cors apt

请任何人帮助我。

此错误发生在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包

提前致谢

0 个答案:

没有答案