Czasem patrząc na zadanie rezygnujemy, zanim podejmiemy się jego realizacji, ponieważ nie wierzymy, że da się je wykonać. Może się jednak zdarzyć, że ktoś nie wie, że się nie da – i robi coś, co wydawało się niemożliwe. Spójrzmy na taki właśnie przykład.
W związku z popularnością Twittera rośnie również popularność skracaczy linków. Jest ich na rynku co niemiara i ciągle powstają nowe. Amerykańska administracja postanowiła nie być gorsza i stworzyła swój adres – go.usa.gov. Z założenia miał miał to być skracacz z dwoma istotnymi ograniczeniami. Po pierwsze, tworzenie nowych linków miało być dostępne tylko dla pracowników administracji rządowej, po wcześniejszym założeniu konta i zalogowaniu się. Po drugie, miał umożliwiać jedynie skracanie linków znajdujących się w rządowych domenach .mil, .gov itp. Jak zatem pewnemu Australijczykowi udało się stworzyć skrót go.usa.gov/YGmR prowadzący do jego strony domowej www.jackola.org?
Po pierwsze, Australijczyk przeczytał dokumentację API serwisu. Odnalazł tam składnię odpowiedniego zapytania
http://go.usa.gov/api/{method_name}.{result_format_desired}?login={user_name}&apiKey={api_key}&{parameters_for_api_method}
Skąd jednak wziąć nazwę użytkownika i klucz API? Okazuje się, że w dokumentacji API zamieszczono prawdziwy klucz i login administratora serwisu! Został już co prawda usunięty, ale Google pamięta.
Skoro Australijczyk miał już dostęp do dodawania linków do serwisu, musiał jeszcze tylko sprawić, by jego link znajdował się w domenie .gov. To akurat było całkiem proste – wystarczyło znaleźć dowolny serwis w domenie .gov, który pozwala na otwarte przekierowanie. Idealnie do tego nadał się serwis http://www.healthandwelfare.idaho.gov. Pozostało już tylko stworzyć kompletne zapytanie
http://go.usa.gov/api/expand.json?login=admin&apiKey=770915505bafb779557abb98dec929dc&shortUrl=http://www.healthandwelfare.idaho.gov/LinkClick.aspx?link= http://www.jackcola.org
i voilà – własny link w rządowym skracaczu linków. Proste, prawda?
Komentarz
Nareszcie ktoś tych amerykanów przerobił