我正在尝试登录用户并在他们的日历中创建事件。
我正在使用Firebase Auth和Google 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 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.
});