Google Client API не может прочитать свойство people, хотя оно загружено
Я пытаюсь использовать Google Client API для доступа к некоторым данным пользователя для конкурса с Coffeescript.
До сих пор я успешно получил доступ к данным при первом входе в систему с помощью этого кода:
initSignIn= () ->
gapi.load('client:auth2', initClient)
# Init click function for sign in button
$('#signin-button').on 'click', (e) ->
gapi.auth2.getAuthInstance().signIn()
return false
return
initClient= () ->
# Init the client API
$.when(
gapi.client.init({
apiKey: 'AIzxxx',
discoveryDocs: ["https://people.googleapis.com/$discovery/rest?version=v1"],
clientId: '31xxx.apps.googleusercontent.com',
scope: 'profile https://www.googleapis.com/auth/youtube.readonly'
})
).then(
# Add listeners for sign in changes
gapi.auth2.getAuthInstance().isSignedIn.listen( updateSigninStatus )
updateSigninStatus( gapi.auth2.getAuthInstance().isSignedIn.get() )
)
return
updateSigninStatus= (isSignedIn) ->
# If the user is signed in then make the call for getting the user data
if isSignedIn then makeApiCall()
return
makeApiCall= () ->
# Test logs
console.log "gapi.client"
console.log gapi.client
console.log "gapi.client.people"
console.log gapi.client.people
# Getting the user data
gapi.client.people.people.get({
resourceName: 'people/me',
'requestMask.includeField': 'person.names,person.email_addresses',
requestMask: {
includeField: 'person.names,person.email_addresses'
}
}).then(
(response) ->
apiCalled = false
console.log(response);
console.log('Hello, ' + response.result.names[0].givenName)
return
(reason) ->
apiCalled = false
console.log('Error: ' + reason.result.error.message)
return
)
return
Когда я обновляю браузер, я иногда получаю данные. Но часто кажется, что свойство people не может быть загружено. Я распечатал объект client в консоли и сразу после него распечатал свойство people. Он показал мне объект client с объектом people, но в следующей строке он больше не мог читать объект people:
Я что-то здесь не так делаю? Я впервые использую клиентский API. Спасибо за вашу помощь!