Što je API?
Programiranje Junak Api / / March 19, 2020
Ažurirano dana

Izraz API znači sučelje programskog programiranja. To je "plug" koji vanjski programeri mogu koristiti za povezivanje s aplikacijom. Evo što trebate znati.
Izraz API znači sučelje programskog programiranja. To je u suštini "plug" koji vanjski programeri mogu koristiti za povezivanje s određenom aplikacijom. Programer traži informacije od API-ja i pruža te podatke korisniku samog programera.
Primjer za to su mobilne aplikacije poput Mint-a koje preuzimaju financijske podatke iz banaka. Drugi primjer je web stranica koja preuzima nove postove s vaših Facebook i Twitter računa i prikazuje ih sve u jednoj web aplikaciji.
API-ji programerima olakšavaju konsolidaciju podataka iz različitih usluga u jedno korisničko sučelje ili aplikaciju.
Što je API?
Da biste razumjeli kako API funkcionira, važno je razumjeti kako aplikacije funkcioniraju putem interneta.
Kada tvorci usluge (poput Google Maps) žele stvoriti sučelje za programere širom svijeta koji se koriste za dobivanje podataka, stvorit će ili SOAP ili REST sučelje. SOAP označava jednostavan protokol za pristup objektima (SOAP). REST je kratica za reprezentativni državni transfer.
Oba protokola izvode iste vrste radnji. Oni primaju zahtjeve iz bilo koje aplikacije i daju odgovor na te zahtjeve.

Struktura prijenosa podataka prati arhitekturu poznatu kao JSON, što je kratica za JavaScript Object Notation. JSON je ono što je poznato kao "razmjena podataka". Jednostavno rečeno, način na koji programeri mogu tražiti informacije u ljudskom i strojno čitljivom obliku.
Kako funkcionira API
JSON je standardiziran način na koji programeri koji stvaraju API i oni koji ga koriste znaju kako svaka njihova aplikacija mogu međusobno "razgovarati". JSON podaci obično su skup parova imena i vrijednosti. Programeri ih mogu poslati kao API API-ju za podatke, a API će odgovoriti vrijednostima u JSON odgovoru objekta.
Redoslijed događaja je sljedeći:
- Klijentska aplikacija šalje strukturirani zahtjev za JSON podatke putem Interneta na web API sučelje.
- API prima zahtjev, obrađuje ga i dobiva tražene podatke iz bilo koje interne baze podataka koje mu trebaju.
- API odgovara putem Interneta na zahtjev koji koristi isti strukturirani format JSON.
- Klijentska aplikacija prima odgovor JSON i korisniku pruža informacije putem sučelja aplikacije.
Informacije se mogu proslijediti u API ili iz njega. Na primjer, aplikacija može poslati informacije o objavi na Facebook API-u koji sadrže podatke o prijavi korisnika i tekst posta. Facebook API primio bi ovaj zahtjev i obradio ga, objavom posta na Facebook zidu tog korisnika.
REST omogućuje programerima aplikacija da koriste razne formate za poruke, uključujući HTML, JSON, XML, pa čak i obični tekst. SOAP API-ji omogućuju samo poruke u formatu XML.
Primjeri API aplikacija
Koji su neki od najpopularnijih web API-ja koji se danas koriste? Postoje mobilne i web aplikacije koje omogućuju korisnicima interakciju s društvenim platformama, provjeru vremena, integraciju s kartama i još mnogo toga. Te aplikacije koriste API-je za pristup udaljenim uslugama i dohvaćanje ili objavljivanje podataka.
Slijedi nekoliko primjera nekih od većine API-ja kojima programeri pristupaju za svoje aplikacije.
API Underground API
Jedno od najpopularnijih načina upotrebe web aplikacija je dohvaćanje vremenskih informacija. Jedan od najpopularnijih internetskih vremenskih servisa za programere jest Weather Underground.
Ovaj API možete vidjeti na djelu koristeći Internetska usluga IFTTT. Ovdje ćete pronaći razne okidače i akcije Weather Underground.

Svaki od njih koristi API zahtjeve za uslugu Weather Underground. Putem IFTTT-a možete koristiti razne vremenske upozorenja i događaje za pokretanje drugih radnji, poput SMS poruka ili e-poruka.
Još jedna popularna vremenska API usluga koju koriste programeri je OpenWeather API.
Skyscanner Flight Search API
Još jedna popularna upotreba API tehnologije odnosi se na aplikacije vezane za putovanja. Mnoge mobilne i web aplikacije trebaju dohvatiti podatke o putovanjima poput statusa leta ili letova i hotelskih ponuda. Skyscanner API donosi ove informacije aplikacijama putem jednostavnih web zahtjeva.
Na primjer, the Web mjesto za planiranje putovanja i mobilna aplikacija koriste Skyscanner API za korisničke zahtjeve pretraživanja putovanja.

Bez pristupa API-ju vanjskih zrakoplovnih kompanija Scoot programeri bi morali izgraditi vlastitu bazu podataka i pribaviti informacije od raznih zrakoplovnih kompanija. Korištenjem Skyscanner API-ja programeri su se mogli usredotočiti na web aplikaciju za planiranje putovanja i umjesto toga prepustiti se teškom pretraživanju leta do Skyscannera.
Yahoo Finance API
Yahoo Finance API danas je poznat kao RapidAPI. Omogućuje bilo koju vanjsku aplikaciju za dohvaćanje kotacija dionica, financijskih izvještaja, priopćenja za dionice i još mnogo toga. Slanjem zahtjeva API-ju programeri mogu dohvatiti široku paletu podataka o burzama, čak uključujući i dionice.

Jednostavan pristup informacijama o dionicama neprocjenjiv je za programere koji žele razviti mobilne financijske aplikacije, ali nemaju pristup dodirivanju različitih tržišnih baza podataka. Korištenjem API-ja poput Yahoo Finance-a programi mogu pristupiti objedinjenim podacima sa svih tržišta uz jednostavan zahtjev za API.
API za skraćivanje URL adrese za skraćivanje URL-a
Jedna od najčešćih radnji za web lokacije poput Twittera ili Facebooka je skraćivanje URL-ova kako bi se objave skratile. Bitly je godinama lider u ovom području. Dakle, ima smisla da bi usluga za skraćivanje URL-ova bila dostupna i putem Bitly API.
To znači da programeri aplikacija mogu ugraditi uslugu za skraćivanje URL-ova u vlastite mobilne aplikacije ili web stranice. Jedan od primjera za to je Zapier, internetska usluga koja pomaže integrirati različite internetske usluge jedna s drugom. Zapier koristi Bitly API kako bi omogućio korisnicima da integriraju svoj Bitly račun s bilo kojom drugom mrežnom uslugom koju mogu imati.

Na primjer, možete aktivirati novu automatizaciju kada stvorite novu vezu pomoću Bitlyja. To bi odmah moglo poslati vezu na dokument Google Dokumenata ili proračunsku tablicu Google tablice. Čak biste mogli Zapieru odmah poslati URL u Evernote Notebook.
Sve su ove integracije moguće jer programeri Zapier-a mogu koristiti web zahtjeve putem Bitly API-ja.
Google API-ji
Google nudi toliko API-ja da nude a Google APIs Explorer da ih nađu. Nekoliko primjera najpopularnijih Google API-ova uključuju:
- API za izvješćivanje o Analytics: Pruža pristup podacima korisnika vlastitog web mjesta Analytics.
- API za kalendar: Dohvatite ili objavite događaje u korisničkom Google kalendaru.
- API Google Dokumenata: Čitajte ili pišite u ili iz dokumenata Google Docs.
- Gmail API: Pristupite korisničkim Gmail računima i šaljite ili dohvaćajte e-poštu.
- API Google tablica: Čitajte ili upišite proračunske tablice korisnika u Google tablice.
Imate jednostavan pristup tim API-jevima s vašeg vlastitog Google računa. Sve što trebate učiniti je naučiti pisati Google skripte i imate pristup cijeloj obitelji Google API-ja za vlastite aplikacije Script.
Na primjer, pomoću Gmail API-ja možete napisati skriptu pošaljite e-poštu putem Gmaila pomoću podataka u proračunskoj tablici Google tablice.
API-ji za društvene medije
Platforme društvenih medija vjerojatno su bile jedan od prvih mrežnih servisa za stvaranje API-ja. Oni su stvoreni tako da trećim programerima mogli pisati mobilne ili web aplikacije za slanje postova na korisnikov društveni račun. Ti API-i i dalje postoje i programeri im neprestano dodaju nove značajke.
Neki primjeri uključuju:
- Twitter API
- Facebook API
- Pinterest API
- Instagram API
- Reddit API
- Tumblr API
- YouTube API
Ovo je samo nekoliko primjera kako velike kompanije koriste API-je za otvaranje svojih usluga programerima aplikacija širom svijeta.
Budući da budućnost Interneta ovisi o integraciji platformi i usluga, API-ji su glavna pokretačka snaga za napredak budućih aplikacija i tehnologija. Zapravo, mnoge mobilne aplikacije ili web stranice koje danas koristite upotrebljavaju vjerojatno mnoge gore navedene API-je, a možda ih ni ne shvaćate.