Stačí poslat HTTP požadavek GET na adresu http://jdem.cz/get?url=adresa-ke-zkrácení. Systém vrátí kompletní krátké URL. Adresa musí být URL-enkódována, tedy znaky jako dvojtečka, lomítko, ampersand či plus musí být převedeny na odpovídající "%xx" vyjádření.
Příklad: Krátké URL pro adresu http://jdem.cz
lze získat tímto HTTP požadavkem:
http://www.jdem.cz/get?url=http%3A%2F%2Fjdem.cz
Výsledek tohoto volání je řetězec http://jdem.cz/aabp, což je zároveň požadovaná zkrácená adresa.
Adresa musí být URL-enkódována celá, tedy včetně případné query části (za otazníkem)
Žádný problém. Za zkrácenou adresu ve tvaru http://jdem.cz/xyz12 dopište jen ?kam. Tedy otazník a "kam". Např. http://jdem.cz/aabi?kam – a víte!
Žádný problém. Za zkrácenou adresu ve tvaru http://jdem.cz/xyz12 dopište jen ?kolik. Tedy otazník a "kolik". Např. http://jdem.cz/aabi?kolik – a víte!
Žádný problém. Za zkrácenou adresu ve tvaru http://jdem.cz/xyz12 dopište jen ?reftab. Tedy otazník a "reftab". Např. http://jdem.cz/aabi?reftab – a víte!
Stačí vám JSON? Pokud ano, tak za zkrácenou adresu ve tvaru http://jdem.cz/xyz12 dopište místo reftab jen ?ref. Tedy otazník a "ref". Např. http://jdem.cz/aabi?ref. Informace je tatáž, jen ve formátu JSON.
Žádný problém. Za zkrácenou adresu ve tvaru http://jdem.cz/xyz12 dopište jen ?red. Tedy otazník a "red". Např. http://jdem.cz/aabi?red Uživateli je nejprve zobrazena cílová adresa a má na výběr, zda chce opravdu pokračovat, nebo zda se chce vrátit zpět.
Nejprve je třeba vložit skript:
<script type="text/javascript" src="http://jdem.cz/jsapi.js"></script>
Skript udělá několik věcí:
Základní funkce je JdemClient.shorten(). Funkce má dva parametry - první je URL, druhý je callback funkce, která bude zavolána ve chvíli, kdy bude k dispozici výsledek:
JdemClient.shorten(document.location.href, 'JdemCB.zkraceno');Tato funkce zkrátí adresu právě otevřené stránky, a výsledek předá funkci JdemCB.zkraceno(). Výsledek je předán jako JS objekt (API používá protokol JSON-P). Ukázka výsledku je zde:
JdemCB.zkraceno({"errorCode": 0,"errorMessage": "",
"results": {"http://misc.maly.cz/jdemapi.html":{"shortUrl":"http://jdem.cz/bvg95","userHash":"bvg95"}},
"statusCode": "OK"}
);
Výsledek lze zpracovat v callback funkci například takto:
JdemCB.zkraceno = function(data) {
var result;
if (data.statusCode=='OK') {
for (var r in data.results) {
result = data.results[r];
break;
}
document.getElementById("result").innerHTML = "Zkracena adresa pro tuto stranku je " + result['shortUrl'];
} else {
document.getElementById("result").innerHTML = "Chyba " + data.errorMessage;
}
}
Druhá funkce, která je k této komplementární, je funkce JdemClient.expand(). Parametry jsou opět URL a callback funkce, ovšem na rozdíl od předchozí funkce tato zjišťuje původní (dlouhé) URL.
Třetí funkce je funkce JdemClient.stats(). Má opět dva parametry, stejně jako expand(), a vrací statistické informace o zkratce - tedy počet kliknutí a navíc i podrobné informace o kliknutí z jednotlivých stránek.
No a bonbónek navrch je funkce JdemClient.onLoad(), která umožňuje vykonat určité akce až ve chvíli, kdy je stránka celá načtená.
Použití bude, myslím, jasnější z praktického příkladu.