Интеграция кнопки обмена твиттером bit.ly на статическом веб-сайте

Я пытаюсь интегрировать bit.ly на свой веб-сайт в JS, чтобы сократить свой URL-адрес. Все мои URL-адреса слишком длинные, что будет самым простым способом использования API-интерфейса bit.ly restful для кнопки обмена на статическом веб-сайте в HTML/javascript.

Результат, который я хочу получить, - это когда мой пользователь нажимает кнопку «Поделиться» на моем веб-сайте, URL-адрес автоматически сокращается на bit.ly

вот код, который я сейчас использую, чтобы динамически делиться своими страницами в твиттере:

<script type="text/javascript" charset="utf-8" src="http://bit.ly/javascript-api.js?version=latest&login=LOGINID&apiKey=APIKEY"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>

<script>

function tweetCurrentPage()
      { window.open("https://twitter.com/share?url=" + escape(window.location.href) + "&text=" + document.title, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600'); return false; }

var TweetThisLink = {

    shorten : function(e) {

        e.preventDefault();

        var url = this.href.substr(this.href.indexOf('http:',5))
        BitlyClient.shorten(url, 'TweetThisLink.response');
    },

    response : function(data) {
        var bitly_link = null;
        for (var r in data.results) {
            bitly_link = data.results[r]['shortUrl']; 
            break;
        }
        var tweet_text = "I am reading documentation of"
        document.location = "http://twitter.com/share?url=" + encodeURIComponent(tweet_text + ' ' + bitly_link);
    }
}


jQuery('.tweetlink').bind('click', TweetThisLink.shorten);
</script>

<a href="javascript:tweetCurrentPage()" class="tweetlink">tweet this link</a>

person Phosy    schedule 26.06.2015    source источник


Ответы (2)


Не уверен, что это намеренно запутано ради вопроса, но в вашем теге script src: "http://bit.ly/javascript-api.js?version=latest&login=LOGINID&apiKey=APIKEY".

LOGINID и apiKey являются заполнителями на месте. Вам нужно заменить их соответствующими ключами, которые вы должны получить от bitly.

если это сделано специально ради вопроса, пожалуйста, игнорируйте этот ответ.

person dortzur    schedule 26.06.2015

не знаю почему, но моя функция "tweetCurrentPage()" для динамического URL-адреса не будет работать, она дает мне ответ INVALID_URI от bit.ly, но если я жестко запрограммирую значение href, подобное этому twitter.com/share?url=+ example.com"; он работает...

person Phosy    schedule 26.06.2015