Firebase身份验证和Caledar API

问题描述 投票:0回答:1

我正在尝试登录用户并在他们的日历中创建事件。

我正在使用Firebase AuthGoogle Calendar API。我不确定如何使用Firebase访问令牌为用户创建事件。

 <script type="text/javascript">
      initApp = function() {
        firebase.auth().onAuthStateChanged(function(user) {
          if (user) {
            user.getIdToken().then(function(accessToken) {
            //how can I use this accessToken to create event in the calendar?
            });
          } else {}
        }, function(error) {});
      };

      window.addEventListener('load', function() {
        initApp();
      });
    </script>

我有一个可以登录用户的脚本,并且我有一个可以创建事件的脚本(代码未发布,因为该代码与附件链接非常相​​似)。如何合并这两个任务?

通过阅读文档,我知道我必须将Calendar范围和发现文档添加到auth脚本中。但是,我正在努力进行下一步。

感谢您的帮助!

firebase firebase-authentication google-calendar-api google-oauth2 gapi
1个回答
0
投票

您不能使用Firebase ID令牌来调用Google Calendar API。

您需要使用Google JS library登录Google并致电calendar APIs。然后,您可以获取Google ID令牌令牌以使用Firebase登录。

// Build Firebase credential with the Google ID token.
const credential = firebase.auth.GoogleAuthProvider.credential(
    googleUser.getAuthResponse().id_token);
// Sign in with credential from the Google user.
firebase.auth().signInWithCredential(credential)
  .then((authResult) => {
    // User signed in with Firebase.
  })
  .catch((error) => {
    // Error while signing in.
  });
© www.soinside.com 2019 - 2024. All rights reserved.