将api用户名和密码添加到HTTP.Get请求中

时间:2017-07-20 08:37:35

标签: json angular typescript

我从昨天开始就遇到了这个问题,虽然我一直在搜索StackOverflow和其他论坛,但我找不到这个问题的答案。

我希望从我们公司的API调用JSON数组,我正在尝试使用此代码,但它不起作用。

constructor(public http: Http) {
  console.log('Data Service connected...');
}

getPosts() {
  const url = 'example.com';
  const header = new Headers();
  header.set('user', 'foo');
  header.append('password', 'bar');
  header.append('Content-Type', 'application/json');
  const options = new RequestOptions({headers: header});
  return this.http.get(url, options).map(res => res.json());
}

然而,当我尝试编译时,我收到错误401(未经授权),有没有办法输入用户名和密码来获取API的响应?

修改

以下是请求标头:

Accept-Encoding:gzip, deflate
Accept-Language:en-US,en;q=0.8,ar;q=0.6
Access-Control-Request-Headers:content-type,password,user
Access-Control-Request-Method:GET
Connection:keep-alive
Host:ess.gtslb.com
Origin:http://evil.com/
Referer:http://localhost:4200/
User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36

1 个答案:

答案 0 :(得分:0)

很高兴看到响应标题,您是否尝试使用jsonp? 我猜您在查询不同的服务器,在这种情况下,您无法使用简单的ajax调用。