CORS outlook api:不允许访问

时间:2017-05-24 09:44:44

标签: api angular http typescript outlook

我无法计算我在CORS上发誓的次数。 现在我们正在尝试访问outlook API来发送电子邮件和内容。我们按照教程,在Postman上做一切,并且有效。现在我们想在Angular 2应用程序中使用以下代码实现它:

requestAccessToken(code: string) 
{
  if (code) {
  var headers = new Headers();
  headers.append("Content-Type", 'application/x-www-form-urlencoded');
  var requestoptions = new RequestOptions({
    headers: headers,
    withCredentials: false // tried true too
  })
  let body = `grant_type=authorization_code&
            redirect_uri=http://localhost:4200&
            code=`+ code + `&
            client_id=4e...ab&
            client_secret=CE.....BC`

  this.http.post("https://login.microsoftonline.com/common/oauth2/v2.0/token", body, requestoptions).subscribe((data) =>
  {
    console.log("data: " + data);
  },
    error =>
    {
      console.log("error: " + error);
    });
  }
}

我们的回答如下:

{
"token_type":"Bearer",
"scope":"calendars.read calendars.read.shared calendars.readwrite calendars.readwrite.shared contacts.read 
contacts.read.shared mail.read 
user.read",
"expires_in":3599,"ext_expires_in":0,
"access_token":"ey...NjQ",
"refresh_token":"OAQABAAA...Fd8JA"
}

这是我想要的,但是我无法从中提取令牌,而我的浏览器会记录以下内容:

Google Chrome log

正如您所看到的,记录了错误,而不是数据和Chrome抱怨CORS。我真的卡住了,互联网上唯一说的就是改变服务器设置,这当然不能用URL登录.microsoftonline.com

0 个答案:

没有答案