JDEM.CZ - API

Jak získat krátkou adresu?

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://iinfo.cz lze získat tímto HTTP požadavkem:
http://www.jdem.cz/get?url=http%3A%2F%2Fiinfo.cz
Výsledek tohoto volání je řetězec http://jdem.cz/ks4p2, 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)

Jak získat krátkou adresu jako QR kód?

Stačí poslat HTTP požadavek GET na adresu http://jdem.cz/qr?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: QR kód zkratky pro adresu http://iinfo.cz lze získat tímto HTTP požadavkem:
http://www.jdem.cz/get?url=http%3A%2F%2Fiinfo.cz
Výsledek tohoto volání je PNG obrázek s QR kódem zkratky dané URL, můžete jej vložit přímo do stránky jako IMG SRC...

Adresa musí být URL-enkódována celá, tedy včetně případné query části (za otazníkem)

Ukázky použití

Ukázka přístupu z PHP

PHP via fsocks (bez CURL)

Ukázka přístupu z C#

C# (System.Web)

Ukázka přístupu z ActionScript

ActionScript (Adobe Flex 2)DemoSource

Jak získat QR kód pro zkratku?

Žádný problém. Za zkrácenou adresu ve tvaru http://jdem.cz/xyz12 dopište jen ?qr. Tedy otazník a "qr". Např. http://jdem.cz/aabi?qr – a získáte QR kód s odkazem!

Jak zjistit, kam adresa vede?

Žá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!

Jak zjistit, kolikrát byla zkratka použita?

Žá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!

Jak zjistit, na jakých stránkách lidé na zkrácený odkaz kliknuli?

Žá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!

Nemáte předchozí informaci v nějakém syrovějším formátu?

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.

Jak dát uživateli na výběr, zda chce opravdu navštívit cílovou adresu?

Žá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.

Jak jednoduše zkrátit URL v textu a poslat ho na Twitter?

Stačí poslat HTTP GET požadavek na adresu http://jdem.cz/tw?text=text-k-tweetnutí. Veškeré odkazy, které budou v textu nalezeny, budou zkráceny na "jdem.cz/..." Text musí být URL-enkódován, tedy znaky jako dvojtečka, lomítko, ampersand či plus musí být převedeny na odpovídající "%xx" vyjádření..

Pokud přidáte do URL parametr "&redir=1", tak vás Jdem přesměruje rovnou na domovskou stránku Twitteru a předvyplní text

Jak zjistit, kolikrát byla zkratka použita přes Twitter odkaz?

Žádný problém. Za zkrácenou adresu ve tvaru http://jdem.cz/xyz12 dopište jen ?twkolik. Tedy otazník a "twkolik". Např. http://jdem.cz/aabi?twkolik – a víte!

API pro JavaScript

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.

Reklama



cz sk