Данные Facebook и Twitter, загруженные через их API, очень медленные - PullRequest
2 голосов
/ 15 февраля 2012

Я работаю в компании, чей веб-сайт использует javascript для получения информации из Facebook и Twitter и показывает ее в нижнем колонтитуле. Проблема в том, что он загружает API-интерфейсы JavaScript с этих сайтов, что может серьезно замедлить время загрузки. API Twitter используется для фильтрации @replies и ретвитов. Фейсбук - это лайкбокс.

Если бы я делал сайт с нуля, я бы импортировал твиты в CMS и использовал PHP для фильтрации ретвитов и @replies. Поскольку HTML может быть кэширован, я думаю, что это будет самым быстрым решением. Для фотографий профиля в Facebook я не уверен, что CMS может так легко это обработать.

Однако, как устроен веб-сайт, нет PHP и т. Д., Который я могу использовать для этого, поэтому я ищу обходной путь.

Поскольку в твиттере есть RSS-канал твитов, я решил, что могу взять эти твиты с помощью javascript, отфильтровать @replies и ретвиты, а затем вставить их на страницу. Это то, что происходит в настоящее время, но я мог бы сделать это без API Twitter.

Другим вариантом является создание отдельного сайта, который представляет собой CMS для импорта твитов, фильтрации их с помощью PHP и предоставления их в виде HTML с соответствующим кэшированием для скорости. Тогда я мог бы включить эту страницу в нижний колонтитул основного сайта с помощью iframe. Я слышал плохие вещи о фреймах, но я знаю, что с ними можно встраивать карты и рекламу Google, и, похоже, это не вызывает проблем, если все сделано правильно.

Есть ли у них проблемы с этими решениями? Кто-нибудь должен был решить ту же проблему с Facebook как коробка?

Спасибо

1 Ответ

0 голосов
/ 15 февраля 2012

iframes может решить множество проблем.Веб-дизайнеры, как правило, избегают их, потому что они не масштабируемы и могут вызвать визуальные проблемы и проблемы доступности для программ чтения с экрана.

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

Создайте переменную, в которой указан URL-адрес, и используйте encodeURIComponent

var FLike=" http://www.facebook.com/dialog/feedredirect_uri=THE_URL&app_id=YOUR_APP_ID&link=THE_URL_YOURE_LINKINGTO&name=TITLE_YOU_WANT_TO_DISPLAY"; document.write(encodeURIComponent(uri));

Затем используйте простую функцию JavaScript, чтобы сделать ее всплывающим (если хотите)

function Like() 
{ 
window.open("FLike","Facebook","width=700,height=300,toolbar=0,resizable=0"); 
} 

И получите изображение (кнопка «Мне нравится») с событием onClick.Это хороший обходной путь, если вы не хотите использовать и их одинаковый дизайн кнопок.

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