【问题标题】:Office 365 OAuth without redirect无重定向的 Office 365 OAuth
【发布时间】:2015-08-11 20:37:35
【问题描述】:

我一直在尝试使用 office 365 的 javascript client library 从 office 365 获取联系人。库打开一个弹出窗口以获取用户 office 365 的详细信息,并在新窗口的查询字符串中返回访问令牌。有没有办法在原始窗口中获取这些信息?

这是导致问题的代码(来自 msdn 示例):

var authContext;
var authToken; // for use with creating an outlookClient later.
authContext = new O365Auth.Context();
authContext.getIdToken("https://outlook.office365.com/")
   .then((function (token) {
       authToken = token;
       // The auth token also carries additional information. For example:    
       userName = token.givenName + " " + token.familyName;
   }).bind(this), function (reason) {
       console.log('Failed to login. Error = ' + reason.message);
   });

【问题讨论】:

    标签: javascript oauth-2.0 office365


    【解决方案1】:

    身份验证码和 id 令牌都与访问令牌相同。获取访问令牌:

    authToken.getAccessToken('https://outlook.office365.com').then(function (accessToken) {
      // do something with accessToken, e.g. use as bearer token in REST call
    }, errorFunction);
    

    如果您打算使用包装 API,您可以改用 authToken.getAccessTokenFn() 并将其传递给您的 Office 客户端的构造函数。

    var outlookClient = new Microsoft.OutlookServices.Client('https://outlook.office365.com/api/v1.0', token.getAccessTokenFn('https://outlook.office365.com/'));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-25
      • 1970-01-01
      • 2015-09-05
      • 2013-11-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多