2013-05-30 4 views
1

Мне интересно, как получить информацию, которую показывает отладчик Open Graph при вводе URL-адреса.Получите идентификатор Facebook для URL

Вот пример: У меня есть страница, которая имеет все необходимые О.Г. мета-теги, сверху выглядит следующим образом:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:og="http://opengraphprotocol.org/schema/" /> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<meta property="og:url" content="http://www.freefunder.com/campaign/Short-Film-Revenge-Inc/" /> 
<meta property="og:type" content="Website" /> 
<meta property="og:title" content="Short Film: &quot;Revenge, Inc.&quot;" /> 
<meta property="og:description" content="&quot;Revenge, Inc.&quot; is the first short film for the Karmalicity Movie Project. A feel-good story with a positive message." /> 
<meta property="og:image" content="http://www.freefunder.com/images/campaigns/2094_main.jpg" /> 
<meta property="fb:app_id" content="346433602097524" /> 

Когда я смотрю его в Open Graph Debugger, он дает мне код 206 и никаких ошибок, и внизу это даст мне URL-адрес, чтобы посмотреть это с помощью Graph API, который: https://graph.facebook.com/103335396527655

Проблема, с которой я столкнулась, - это то, что мне нужно определить идентификатор Facebook (103335396527655)) в моем коде, и вам не нужно каждый раз обращаться к отладчику. Если я иду:

http://graph.facebook.com/?ids=http://www.freefunder.com/campaign/Short-Film-Revenge-Inc/

Это не возвращает ту же информацию (и не включает в себя идентификатор), как будто я иду в URL API Graph, предоставленной отладчике.

Есть ли способ, с учетом определенного URL-адреса, найти правильный идентификатор Facebook для этого? Это может быть с графическим API, FQL, PHP SDK, что угодно! Мне просто нужно указать URL-адрес и получить идентификатор Facebook.

Спасибо!

+2

Для чего вы используете идентификатор? вы должны иметь возможность использовать URL вместо идентификатора во всех API-интерфейсах.? – Igy

+0

В принципе, мне нужно убедиться, что у данного URL есть Open Graph ID. Мне нужно убедиться, что на странице есть кнопка Like и все необходимые теги og, только просматривая этот URL. –

+0

Зачем вам нужно использовать API Facebook для проверки собственного кода? Вы не можете написать скрипт для проверки? Или что-то? Возможно, я недооценил это неправильно, хотя ... – dudewad

ответ

1

Прежде всего, только потому, что на странице есть кнопка Like и теги OG, это не значит, что страница когда-либо была очищена от FB Crawler. Если страница никогда не была «Liked», «Shared» или была частью действия Open Graph, Facebook понятия не имеет, что она существует, и, следовательно, на ней нет информации об этом на Graph.facebook.com

Во-вторых, там не гарантирует, что одному и тому же URL-адресу всегда будет присвоен одинаковый идентификатор графика. Я попытался сделать что-то вроде URL -> сопоставления идентификаторов (чтобы проверить, понравился ли определенный пользователь определенной странице) в прошлом, и один и тот же точный URL-адрес может быть связан с любым количеством разных идентификаторов. Единственный надежный результат - это страницы Facebook и профили пользователей.

Итак, вам нужно использовать что-то вроде phpQuery и просто искать все теги, которые вы хотите, чтобы убедиться, что они существуют на странице пользователя.

Смежные вопросы