Как отличить страницы от приложений? - PullRequest
1 голос
/ 15 января 2012

Используя php-sdk Я получаю страницы следующим образом:

$array = $this->instance->api(
    '/' . $fb_user . '/accounts', 'GET', array('access_token' => $access_token)
);

Теперь var_dump($array['data']); дает мне:

array (
0 => 
array (
    'name' => 'my name 1',
    'access_token' => '***',
    'category' => 'Electronics',
    'id' => '***',
),
1 => 
array (
    'name' => 'my name 2',
    'access_token' => '***',
    'category' => 'Application',
    'id' => '***',
)

Только первый элемент - это страница, второй - приложение. Есть ли способ отличить их или улучшить этот фрагмент?

EDIT: использование поля category представляется слишком слабой процедурой.

Ответы [ 2 ]

2 голосов
/ 15 января 2012

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

Выполнить запрос для:

https://graph.facebook.com/[page_or_app_id]

Помимо прочего, естьбудет поле:

{
    [...]
    "type": "application"
]

или:

{
    [...]
    "type": "page"
]

Чтобы избежать длинных ответов, вы можете рассматривать Пакетные запросы, как описано:

1 голос
/ 15 января 2012

Предположим, что в категории указано «Приложение», для фильтрации я бы использовал свойство категории.В качестве альтернативы, если, как вы говорите, использование категории слишком слабо для вас.Вы можете использовать сильный FQL.SELECT display_name FROM application WHERE app_id='{the id from your me/accounts}' и посмотрим, вернешь ли ты объект или нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...