Нет. Разметка Open Graph должна присутствовать на HTML-страницах, которые можно получить с помощью чистого HTTP.
Это потому, что когда пользователь взаимодействует с объектом OG (например, выполняет действие и т. Д.), Facebook выполняет HTTP GET для URL OG и ожидает, что теги OG будут возвращены в разметке.
Решение заключается в создании канонических URL для каждого из ваших объектов. Эти URL содержат базовую разметку HTML, включая теги OG.
При запросе к этим URL-адресам, если вы видите входящую строку useragent, содержащую 'facebookexternalhit', вы визуализируете HTML. Если вы этого не сделаете, вы обслуживаете 302, который перенаправляет на ваш адрес ajax. В URL-адресах ajax ваши кнопки лайков и любые публикуемые вами действия OG должны указывать на канонический объект URL
Пример:
Как пользователь, я нахожусь на http://yoursite.com/#!/artists/monet. Я нажимаю кнопку «Мне нравится» или публикую действие, но параметр href кнопки «Мне нравится» или URL-адрес объекта при публикации действия должен быть веб хитанизированный канонический URL для объекта - в данном случае, возможно, http://yoursite.com/artists/monet
Когда пользователь, использующий браузер, нажимает http://yoursite.com/artists/monet, вы должны перенаправить их на http://yoursite.com/#!/artists/monet,, но если входящий пользовательский агент говорит, что это скребок Facebook, вы просто возвращаете разметку, которая представляет художника Моне.
Примеры из реальной жизни см. В Deezer, Rdio и Mog, которые все используют этот шаблон проектирования.