Альтернативы Twitter @Anywhere API? - PullRequest
1 голос
/ 26 ноября 2011

Я пытаюсь разместить твит-бокс на своем сайте, просто используя @anywhere API от Twitter . Несмотря на то, что это прекрасно работает и его легко настроить, у него есть следующие проблемы:

Есть ли другие альтернативы использованию @anywhere?

Редактировать: вот мой код ..

<div id="twitter_widget">
        <script src="http://platform.twitter.com/anywhere.js?id=**MYAPPID**&v=1"></script>
        <script type="text/javascript">
        twttr.anywhere(function (T) {
            T("#twitter_widget").tweetBox({
            label: "<span style='display:block !important;margin-bottom:5px !important;font-family:Helvetica Neue !important; color: #CCC !important; font-size: 18px !important; font-weight: 500 !important;'>Tweet</span>",
            height: 100,
            width: 300,
            defaultContent: ""
            });
        });
        </script>
        <button class="check-twitter" onclick="window.open('http://www.twitter.com','_blank');">Go to Twitter</button>
    </div>

Ответы [ 3 ]

1 голос
/ 06 декабря 2011

Если вы хотите использовать @anywhere, вы ничего не можете с этим поделать. Я заметил случайные вещи в начале (например, время простоя, а что нет). Но обычно platform.twitter.com должен быть достаточно быстрым, поскольку он обслуживается Akamai.

Как вы определили, что это три секунды, и что именно занимает три секунды? Вся страница или просто загрузка внешнего JS и т. Д.? 1005 *

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

1 голос
/ 06 декабря 2011

Альтернатива - сделать ваш сайт клиентом для твиттера. Это требует от вас поддержки oAuth и Twitter API.

1 голос
/ 05 декабря 2011

Мне не известны альтернативы @anywhere. Но я не верю, что запросы 3s / 14 влияют на вас.

Из документации Твиттера -

"Все зависимости для функций @Anywhere загружаются асинхронно, по требованию, чтобы не влиять на производительность страницы хоста "

Короче говоря, это означает, что ваша страница почти отделена от библиотеки Twitter. Пользователь должен иметь возможность использовать вашу страницу, даже если загрузка виджетов Twitter занимает много времени. Это не решает проблему «загрузки 14 запросов», но гарантирует, что проблемы с производительностью Twitter не станут вашими.

Обратите внимание, что я сказал почти выше. Загрузка внешнего скрипта как части вас может замедлить весь ваш сайт. Если серверы Twitter сталкиваются с проблемой, это может привести к единой точке отказа Front End .

ОБНОВЛЕНИЕ: Для Twitter загрузка асинхронно в любом месте. Js не поддерживается . Решение, которое я упоминаю ниже, может или не может работать для вас, действуйте с осторожностью.

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


//Assumes jQuery was loaded

jQuery.getScript("http://platform.twitter.com/anywhere.js?id=&v=1", function(data, textStatus) {
twttr.anywhere(function (T) {
            T("#twitter_widget").tweetBox({
            label: "Tweet",
            height: 100,
            width: 300,
            defaultContent: ""
            });
        });
});


Поставьте этот код перед закрытием </head>. Он будет загружаться в любом месте. Js асинхронно и вызывать функцию твиттера только после загрузки js.

...