Već imate nalog?

Ukoliko nemate nalog, registrujte se.

Ukoliko ste zaboravili lozinku, moraćete da nas kontaktirate.

Horoskopius BEE API Dokumentacija

Codename: Bee RESTful web API

Pošto je API namenjen developerima, programerima i uopšte ljudima koji se, bar početnički, razumeju u web programiranje, korišćenje API-a vam verovatno nije strano. Verovatno ste do sada integrisali Facebook, Twitter ili slične API kako bi unapredili vaš sadržaj i učinili interaktivnijim Vaš sajt.

Slična je stvar i sa Horoskopius BEE API. Ukoliko želite da integrišete redovan/kineski dnevni, nedeljni, mesečni ili ljubavni i poslovni horoskop sa AStro portala Horoskopius, onda je BEE API upravo za vas.

Najbolji način da koristite Horoskopius BEE API je preko našeg PHP SDK, međutim, ukoliko želite da koristite API van njega, ili vam sajt nije na PHP, nego na JSP, ASP ili drugim tehnologijama, ispod se nalazi mini tutorial

Želim da koristim PHP SDK

Kako koristiti API bez SDK?

Tutorial za PHP, ostali jezici u tutorialu nisu navedeni, manje više su slični principi

Počinjemo sa prvim delom u vašem kodu, a to je autorizacija, koju možete navesti u dva stringa:

<?php
                         
//HOROSKOPIUS API AUTORIZACIJA
############ KORISNIČKA PODEŠAVANJA ###########################
// korisnički public i private key koji ste dobili prilikom prijave.
$private_key "vas_private_key_ide_ovde";
$public_key "vas_public_key_ide_ovde";
                         
?>

Zatim definišete pozive ka tipovima horoskopa. Svaki tip zahteva je komentarisan:

<?php
                         
//tip odziva, xml ili json (preporučujemo XML)
$type "xml";
        
//koji tip horoskopa želite
// 1 = Običan, regularni horoskop
// 2 = Kineski horoskop
$horoscope 1;
        
//kategorija horoskopa (SAMO UKOLIKO JE IZABRAN tip horoskopa = 1 (običan horoskop), kategorije su sledeće:
// 1 = Običan horoskop
// 2 = Ljubavni horoskop
// 3 = Poslovni horoskop
$category 1;
        
//Izaberite hoćete li dnevni, nedeljni ili mesečni horoskop
// 1 = Dnevni horoskop
// 2 = Nedeljni horoskop
// 3 = Mesečni horoskop
$horoscope_type 1;
        
//Keširanje (OSTAVITI NA 1, za slučaj da je 2 pročitati uputstvo u API-ju)
$cache 1;
############ KRAJ KORISNIČKIH PODEŠAVANJA ###########################
                         
?>

Iznad može da se vidi kako se definišu zahtevi ka određenom tipu horoskopa. Poslednja stavka je cache. Preporučujemo da ostavite na 1 jer će vam tako zahtevi biti mnogo brži i nećete moći da čekate više vremena na odziv našeg servera koji će vam prilikom zahteva vratiti keširanu verziju. Cache sa opcijom 2 se koristi isključivo ako želite da parsirate jednom dnevno u vašu bazu tako da uvek dobijete svež sadržaj koji se kod nas menja tačno u 00:10 svaki dan. Tako da za čisto parsiranje podataka cache sa opcijom 1 preporučujemo i verovatno ćemo u budućnosti i limitirati zbog rasterećenja naših servera.

Ispod možete da vidite API poziv napravljen preko CURL-a. Ukoliko vaš server podržava CURL, preporučujemo da ga koristite. Autorizacija je bitna stvar jer koristimo HMAC vid autorizacije kako bi pozivi bili što bezbedniji.

<?php
############ API POZIV ##################################
//Generisanje korisničkog potpisa prilikom API zahteva (NE MENJATI)
$sig base64_encode(hash_hmac("sha1"$private_keytrue));
//NAŠ API ISKLJUČIVO MORATE KORISTITI SA CURL
//Ukoliko na vašem serveru nemate instaliran curl kao Apache modul za PHP,
//molimo vas da se obratite vašem sistem administratoru.
//Horoskopius API proverava digitalni potpis poslat preko cUrl-a, i ne pušta drugačije pozive
$url "http://dev.horoskopius.com/service/"//URL ka horoskopius API-ju (NE MENJATI)
$ch curl_init();    // inicijalizacija CURL-a
curl_setopt($chCURLOPT_URL,$url); // set url to post to
curl_setopt($chCURLOPT_RETURNTRANSFER,1); // return into a variable
curl_setopt($chCURLOPT_TIMEOUT4); // times out after 4s
curl_setopt($chCURLOPT_POSTFIELDS"type=$type&horoscope=$horoscope&category=$category
                                      &horoscope_type=
$horoscope_type&sig=" urlencode($sig) . 
                                      
"&auth=" urlencode($public_key) . ""); // parametri u zahtevu (NE MENJATI)
curl_setopt($chCURLOPT_USERAGENT"Horoskopius"); //User agent (NE MENJATI)
$result curl_exec($ch); //izvršavanje zahteva

?>

Kada ste izvršili uspešan poziv ka našem API-u, u zavisnosti od toga koju ste vrstu podataka tražili (xml ili json) sledi parsiranje podataka. Dali smo vam dve gotove funkcije koje slobodno možete iskoristiti prilikom parsiranja naših podataka.

XML parsiranje

<?php
###########   XML PARSER #################################################
//FUNKCIJA ZA PARSIRANJE PODATAKA
//PREPORUČUJEMO DA KORISTITE SIMPLEXML PARSER
$horoskop = new SimpleXmlElement($resultLIBXML_NOCDATA);
        
//ZA VAS SMO NAPISALI JEDNOSTAVNU FUNKCIJU KOJU MOŽETE PREPRAVITI
//ŠTO SE TIČE CSS IZGLEDA I SLIČNO
//Ne dirati link na kraju ispisa
function parseHoroskopiusXml($xml) {
            
echo 
'<h2>Dnevni horoskop</h2>'//Naravno, naslov menjate po tome koji ste horoskop odabrali za prikaz
echo '<ul class="horoskopius">'//slobodno mozete menjati CSS klase, prilagoditi sebi

$cnt count($xml->{"horoscope"});
for(
$i=0$i<$cnt$i++) :
$sign $xml->{"horoscope"}[$i]->{"sign"};
$horoscopetxt $xml->{"horoscope"}[$i]->{"horoscopetxt"};
//formatiranje ispisa
echo '<li><h3>' $sign '</h3> ' $horoscopetxt '</li>';
endfor;
//obavezno postavljanje back link aka horoskopius web portalu
echo '<li>Horoskop obezbedio - Astro portal <a href="' $xml->{"source"}->{"url"} . '">' $xml->{"source"}->{"name"} . '</a></li></ul>'//zavrsavanje ispisa
}
//ISPIS HOROSKOPA NA STRANICI GDE ŽELITE
parseHoroskopiusXml($horoskop);
?>

Funkcija je zaista straight-forward i sami možete da primetite na koji način XML parser možete da upotrebite i koji su nazivi tagova u povratnom XML-u

Parsiranje JSON niza

Takođe, sledeću funkciju možete iskoristiti ukoliko ste u API pozivu koristili JSON kao povratne podatke. Funkciju možete slobodno upotrebiti u vašoj skripti.

<?php
########### JSON PARSER ####################################################
//UKOLIKO STE HTELI JSON, KORISTITE OVU FUNKCIJU, NARAVNO PRILAGODITE TAGOVE I CSS PO ŽELJI
$horoskopjson json_decode($result);
        
//FUNKCIJA ZA PARSIRANJE JSON NIZA
function parseHoroskopiusJson($json) {
echo 
'<h2>Dnevni horoskop</h2>'//Naravno, naslov menjate po tome koji ste horoskop odabrali za prikaz
echo '<ul class="horoskopius">'//slobodno mozete menjati CSS klase, prilagoditi sebi
$cnt count($json->{"horoscope"});
for(
$i=0$i<$cnt$i++) :
$sign $json->{"horoscope"}[$i]->{"name_sign"};
$horoscopetxt $json->{"horoscope"}[$i]->{"txt_hrs"};
//formatiranje ispisa
echo '<li><h3>' $sign '</h3> ' $horoscopetxt '</li>';
endfor;
//obavezno postavljanje back link aka horoskopius web portalu
echo '<li>Horoskop obezbedio - Astro portal <a href="http://www.horoskopius.com">Horoskopius</a></li>';
echo 
'</ul>'//zavrsavanje ispisa
}
//ISPIS HOROSKOPA NA STRANICI GDE ŽELITE
parseHoroskopiusJson($horoskopjson);        
?>

Ceo kod možete da preuzmete ovde

Wordpress plugin Horoskopius

Poslednji update

PHP SDK na GitHub-u: GitHub Horoskopius

Izašla je nova verzija Horoskopius API-a: 1.02 stable build 20120605

Najnovija verzija Horoskopius PHP SDK: 1.14 stable build 20120615

Showcase

Share

Ukoliko želite da budete na ovim stranicama, slobodno nas kontaktirajte, i dajte nam opis, logotip vašeg sajta