Мне нужно проверить, действительно ли данный идентификатор приложения Facebook. Кроме того, мне нужно проверить, какие настройки домена и сайта установлены для этого идентификатора приложения. Это не имеет значения, если это делается через PHP или Javascript.
Я проверял везде, но не мог найти никакой информации об этом. Есть идеи?
Вы можете проверить идентификатор, перейдя по http://graph.facebook.com/<APP_ID>
и посмотреть, загружает ли он то, что вы ожидаете. Для информации о приложении попробуйте использовать admin.getAppProperties , используя свойства из этого списка .
Используйте Graph API. Просто спросите:
https://graph.facebook.com/<appid>
Он должен вернуть вам объект JSON, который выглядит так:
{ id: "<appid>", name: "<appname>", category: "<app category>", subcategory: "<app subcategory>", link: "<applink>", type: "application", }
Итак, чтобы проверить, действительно ли указанный app_id является идентификатором приложения, найдите свойство типа и проверьте, говорит ли он приложение. Если идентификатор вообще не найден, он просто вернет значение false.
Дополнительная информация: https://developers.facebook.com/docs/reference/api/application/
Например:
<?php $app_id = 246554168145; $object = json_decode(file_get_contents('https://graph.facebook.com/'.$app_id)); // the object is supposed to have a type property (according to the FB docs) // but doesn't, so checking on the link as well. If that gets fixed // then check on isset($object->type) && $object->type == 'application' if ($object && isset($object->link) && strstr($object->link, 'http://www.facebook.com/apps/application.php')) { print "The name of this app is: {$object->name}"; } else { throw new InvalidArgumentException('This is not the id of an application'); } ?>
Используйте Graph API:
$fb = new Facebook\Facebook(/* . . . */); // Send the request to Graph try { $response = $fb->get('/me'); } catch(Facebook\Exceptions\FacebookResponseException $e) { // When Graph returns an error echo 'Graph returned an error: ' . $e->getMessage(); exit; } catch(Facebook\Exceptions\FacebookSDKException $e) { // When validation fails or other local issues echo 'Facebook SDK returned an error: ' . $e->getMessage(); exit; } var_dump($response); // class Facebook\FacebookResponse . . .
Дополнительная информация: FacebookResponse для SDK для PHP для PHP