использование FB.data.query не возвращает ответ - PullRequest
0 голосов
/ 25 апреля 2011

Я пытаюсь получить пол и дату рождения пользователя с помощью следующего:

   FB.api('/me', function(response) {
                var query = FB.Data.query('select birthday, gender from user where owner={0}',
                       response.id);

                query.wait(function(rows) {
                    console.log(rows[0].birthday);
                    console.log(rows[0].gender);
                    alert(rows[0].birthday);
                    alert(rows[0].gender);
                });
            });

Тем не менее, я ничего не вижу на консоли, и нет никаких предупреждений. Почему это?

1 Ответ

1 голос
/ 13 сентября 2011

Если вы хотите, чтобы день рождения и пол аутентифицированного пользователя (/ me), вы можете просто получить доступ к объекту пользователя, как это:

FB.api('/me', function(response) {
    console.log(response.birthday);
    console.log(response.gender);
    alert(response.birthday);
    alert(response.gender);
});

Если вы хотите, чтобы день рождения и пол пришли из таблицы пользователяВы не можете использовать поле «пол», потому что оно не существует.Вместо этого используйте «секс».

FB.api('/me', function(response) {
  var query = FB.Data.query('select birthday, sex from user where uid={0}', response.id);

   query.wait(function(rows) {
         console.log(rows[0].birthday);
         console.log(rows[0].gender);
         alert(rows[0].birthday);
         alert(rows[0].sex);
        });
});

Вы не получили ответа, потому что пытались получить доступ к несуществующему полю.

...