Я пытаюсь использовать Google Calendar API для получения информации о конкретном календаре. Я продолжаю получать эту ошибку Cannot read property 'signIn' of null
. Я использую пример здесь https://developers.google.com/google-apps/calendar/quickstart/js.Google Calendar API получает 'Can not read property' signIn 'of null'
Любая идея, почему это происходит? И может ли кто-нибудь дать мне более простой способ получить календарные данные? В основном, я хочу знать, какие комнаты в моем календаре можно бесплатно забронировать. Могу ли я это сделать с помощью API календаря?
const CLIENT_ID = '418414126140-u5u3r2ampke8egh7d2tk50ferkl8ri26.apps.googleusercontent.com';
const SCOPES = ["https://www.googleapis.com/auth/calendar.readonly"];
app.factory('getCalendar', ['$q', function($q){
return function checkAuth() {
var deferred = $q.defer();
function handleClientLoad() {
gapi.load('client:auth2', initClient);
}
handleClientLoad();
function initClient() {
gapi.client.init({
"client_id": CLIENT_ID,
"scope": SCOPES
}).then(function() {
gapi.auth2.getAuthInstance().signIn();
});
}
function updateSigninStatus(isSignedIn) {
if (isSignedIn) {
console.log("You are authorized");
listUpcomingEvents();
} else {
console.log("You are not authorized");
}
}
function listUpcomingEvents() {
gapi.client.calendar.events.list({
'calendarId': 'primary',
'timeMin': (new Date()).toISOString(),
'showDeleted': false,
'singleEvents': true,
'maxResults': 10,
'orderBy': 'startTime'
}).then(function(response) {
console.log(response);
deferred.resolve(response);
});
}
return deferred.promise;
} //return ends here
}]);
Спасибо. Я нашел этот учебник онлайн, который намного проще в использовании по сравнению с документацией Google. https://www.youtube.com/watch?v=0rZmp3Ew_kA Любая идея о том, как проверить, какие номера в вашем календаре доступны или нет? –