#javascript #facebook #share
#javascript #Facebook #Поделиться
Вопрос:
У меня есть веб-приложение, которое полностью поддерживается javascript. Это означает, что есть только один запрос, который отображает полную страницу, все остальное обрабатывается в формате json для отображения.
Facebook share использует теги opengraph в заголовке, чтобы управлять тем, какой текст и изображение отображать в общем доступе, но мое приложение представляет собой единую страницу с одним заголовком, так что я мог использовать только одно изображение для всех ссылок в приложении.
Мы используем хэш-теги (#!) для управления тем, где пользователь находится в приложении, но у нас также есть средство перезаписи URL, которое, когда пользователь нажимает на URL, подобный
http://domain/action/id
они отправляются (через заголовок перенаправления)
http://domain/#!/action/id
Итак, учитывая этот сценарий, я хочу знать, есть ли способ поделиться моими URL-адресами на facebook и попросить facebook получить другое изображение для каждого из моих URL-адресов.
Ответ №1:
Когда facebook-share получает страницу, он не обрабатывает содержащийся на ней javascript, но пытается выполнить поиск по тегам opengraph в ней. таким образом, в принципе, нет способа поделиться своим URL-адресом на facebook и получить другое изображение, если у вас не загружены теги opengraph в ответе — без javascript. Подумайте, что бы вы сделали, если бы у вас вообще не было javascript..
Итак, что вам нужно было бы сделать, это загрузить теги opengraph на странице, прежде чем использовать javascript.
Комментарии:
1. Итак, мой вопрос меняется на: «Facebook следует HTTP-перенаправлениям?» Если да, то у меня здесь не так уж много вариантов. Если нет, я могу установить теги opengrapf на странице, которые отправляют перенаправление, и тогда facebook увидит теги, в то время как реальные пользователи будут перенаправлены и увидят фактический контент. Это нормально?
2. да, Родриго, это именно то, что я делаю. Вы можете установить теги opengraph на странице, а затем перенаправить пользователя с помощью мета-тегов или javascript — не через http-заголовок. проголосуйте за меня, если я помог вам!