2009-07-10 8 views
5

Próbuję zbudować funkcję jQuery, która pozwoli mi stworzyć TinyURL z jakiegoś innego linka z powodów mikro blogowania (tak, twitter) ... Znalazłem ten samouczek Jamesa Padolseya , ale nie otrzymuję odpowiedzi z połączenia.Jak używać jQuery do produkcji TinyURL

http://james.padolsey.com/javascript/create-a-tinyurl-with-jsonp/

function requestShortURL(longURL, success) { 
    var API = 'http://reque.st/create.api.php?json&url=', 
     URL = API + encodeURIComponent(longURL) + '&callback=?'; 
    console.log('tweet apit url: ' + URL); 
    $.getJSON(URL, function(data){ 
     success && success(data.url); 
    }); 
} 

requestShortURL('http://www.mycompany.com', function(shortened){ 
    alert('new url: ' + shortened); 
}); 
+0

Sprawdź swoją konsolę JavaScript (Narzędzia> Konsola błędów w Firefoksie) lub użyć konsoli Firebug jest - może to dać użyteczną komunikat o błędzie – dbr

Odpowiedz

8

Hm, który wydaje się działać dobrze dla mnie:

function makeTinyUrl(url) 
{ 
    $.getJSON('http://json-tinyurl.appspot.com/?url=' + url + '&callback=?', 
     function(data) 
     { 
      alert(data.tinyurl); 
     } 
    ); 
} 

makeTinyUrl('http://stackoverflow.com/questions/1111171/how-to-use-jquery-to-produce-tinyurl'); 
+0

Myślisz, że proxy może zabijać to? Skopiowałem wszystko, co masz tutaj, i nie otrzymuję żadnego alarmu ... – RSolberg

+1

Co to jest, jeśli bezpośrednio wywołasz adres URL (http://json-tinyurl.appspot.com/?url=http:/ /stackoverflow.com/questions/1111171/how-to-use-jquery-to-produce-tinyurl&callback=test123) w przeglądarce? Właśnie go wypróbowałem i ostrzeżono, a przeglądarka zwróciła to: test123 ({"tinyurl": "http: \/\/tinyurl.com \/m2befh", "ok": true}) – Daff