Я пытаюсь проверить, был ли пользователь подписан или нет, но я получаю действительно противоречивые результаты, которые, похоже, связаны с каким-либо условием гонки. Я в основном взял код Google Developer Website:API входа в Google: isSignedIn.get() возвращает несогласованные значения
gapi.load('auth2', function() {
auth2 = gapi.auth2.init({
client_id: 'my_client_id.apps.googleusercontent.com',
});
console.log(auth2.isSignedIn.get());
setTimeout(function(){console.log(auth2.isSignedIn.get())},50);
setTimeout(function(){console.log(auth2.isSignedIn.get())},500);
setTimeout(function(){console.log(auth2.isSignedIn.get())},1000);
});
По какой-то причине, первые два возвращение ложным, а второй возвращает истину. Я проверил дважды, и я вошел в систему, так что кажется, что первые два должны возвращаться. Что я скучаю по ней? Я просмотрел документацию, и, похоже, не было ничего, что указывало бы на что-то асинхронное, и я не уверен, чего я должен ждать, прежде чем я получу надежный результат из вызова isSignedIn
.