Firebase身份验证后访问作用域数据

Firebase身份验证后访问作用域数据,firebase,google-calendar-api,angularfire2,google-api-js-client,Firebase,Google Calendar Api,Angularfire2,Google Api Js Client,我使用以下代码(Angularfire2)在我的google登录验证中授权了日历api: 是否有任何方法可以使用FirebaseAuth访问授权范围 例如,在用户签名并授权日历验证后访问日历数据。如果您签出,您将看到有,其中演示了如何获取第三方OAuth令牌: // Using a redirect. firebase.auth().getRedirectResult().then(function(result) { if (result.credential) { // This

我使用以下代码(Angularfire2)在我的google登录验证中授权了日历api:

是否有任何方法可以使用FirebaseAuth访问授权范围

例如,在用户签名并授权日历验证后访问日历数据。

如果您签出,您将看到有,其中演示了如何获取第三方OAuth令牌:

// Using a redirect.
firebase.auth().getRedirectResult().then(function(result) {
  if (result.credential) {
    // This gives you a Google Access Token.
    var token = result.credential.accessToken;
  }
  var user = result.user;
});

一旦你有了第三方令牌,你就可以直接在他们的API上使用它。

Hey@Kato,在这个例子中,我只能在用户登录时获得accessToken,但是我以后如何检索它呢?我的意思是,如果用户刷新页面,并且他已经登录,那么在不重新签名的情况下就无法检索此令牌?(除非保存到数据库中,这可能是一个糟糕的做法。)如果您直接使用Google OAuth登录,您会如何处理令牌?您仍然需要以某种方式跟踪它。如果我没有记错,您应该存储刷新令牌。它们实际上不是相同的身份验证凭据,因此如果您需要通过GoogleAPI的身份验证,那么就这样做。请注意,您始终可以反转进程并将该令牌传递给Firebase。但是Firebase在管理您的第三方提供商身份验证方面没有任何魔力。嘿@Kato将访问令牌保存到currentUser对象上安全吗?访问令牌很快就会过期,因此保存它们并不是很有用。在大多数用例中,这些都是由Firebase在幕后管理的。@Kato看起来Firebase auth不会刷新google访问令牌:
// Using a redirect.
firebase.auth().getRedirectResult().then(function(result) {
  if (result.credential) {
    // This gives you a Google Access Token.
    var token = result.credential.accessToken;
  }
  var user = result.user;
});