Eelised:

Tüübid

  • tagasi pöördumas. Kui kolmanda osapoole rakendus taotleb määratud parameetritega meetodit, esitab server nõutud teabe kindlas vormingus;
  • muutumas. Klient kutsub mõnda serveri funktsiooni, mis sisestab uut teavet või muudab selle teatud sätteid.

Yandex.Direct API

API on tõhus veebisaidi reklaamimiseks.

  1. Selle põhjal saavad arendajad luua rakendusi, mis suhtlevad otse otsingumootori teenusega. Sellised programmid võimaldavad reklaamijatel paindlikult hallata suuremahulist reklaami, saada nende kohta statistilisi aruandeid ja prognoosida eelarveid täpselt.
  2. Direct API abil saavad reklaamiagentuurid vaadata kogu oma klientide nimekirja ja kliendid oma esindajaid.
  3. Kui teatud otsingumootori optimeerimiseks kasutatavad fraasid annavad kontekstuaalses reklaamis madala CTR-i, saab nende kuvamise automaatselt keelata. Temaatilistel platvormidel saate API kaudu määrad määrata, teatud annetajad saab eemaldada.
  4. Yandex.Direct API-l on SOAP-liides, see tähendab, et see pakub rakenduste loomiseks laia valikut programmeerimiskeeli. Seda protokolli toetavad sellised keeled nagu Perl, Java, Python jne. Andmevahetust saab läbi viia ka JSON-vormingus.

Kui töötate kasvõi eemalt veebiarendustööstuse lähedal, võite olla 100% kindel, et kuulete neid kolme kurikuulsat tähte: API.

Vestlused nende kohta on hajutatud noobide ja ekspertide vahel:

„Miks ma peaksin API-kõne tegema? Kas tal on number?

"Lihtne kõne sellele kolmanda osapoole API-le aitab teil seda saavutada."

„Loome teie jaoks RESTful API; veenduge, et teie uus süsteem toimiks hästi teiste teenustega."

Kuigi API-d võivad alguses tunduda hirmutavad, võivad need sõna otseses mõttes muuta teie elu arendajana.

Milleks? Noh, API-de õige kasutamise õppimine võib teie arendustöövoogu lihtsustada, kiirendada ja tugevdada. API-de loomine või integreerimine toob märkimisväärset kasu nii teie klientidele kui ka teile.

Arendajatena kuulete sageli nõuannet "ärge leiutage jalgratast uuesti":

nali:
tark nõuanne: ära leiuta jalgratast uuesti
programmeerija: okei
ei kirjuta enam kunagi kohandatud koodi

Kui naljad kõrvale jätta, on API-del oluline roll selle tagamisel, et te ei leiuta jalgratast uuesti. Usume Snipcartis kindlalt, et API põhialuste mõistmine on tänapäevaste veebiarendajate võtmeoskus. Selles postituses aitame teil seda teha. Me kaalume:

API kasutamise eelised Mis API tegelikult on Mis tüüpi API-sid on olemas Praktilised näited API kasutamisest

Noh, kas poleks aeg sellesse sukelduda?

API-de eelised: miks neid kasutada?

Üks esimesi, kõige olulisemaid samme minu programmeerimiskarjääris oli API-st õige arusaam.

Kasutan neid siiani iga päev.

Enne asja juurde asumist lubage mul esmalt veenda teid, et API mõistmine on teie aega väärt.

Sest API-de kasutamise õppimine parandab oluliselt teie arendustegevuse efektiivsust.

Esiteks võimaldab see kasutada olemasolevat loogika või osad, mida sa ei pea ise kirjutama. Mõned asjad, mida te ei pruugi ise kirjutada! Seetõttu on väärtusliku aja säästmiseks väga oluline arendajana omada ettekujutust, milline API välja näeb.

Teiseks on paljud arendusprobleemid, millega kokku puutute, juba enne teid lahendatud. Olenemata nende olemasolevate lahenduste vormist (FaaS, teegid, veebiteenused, SDK-d, sisu API-d jne), vajate nendega suhtlemiseks tõenäoliselt API-d.

Mis on API?

Noh, ametlik, hirmutav määratlus on:

Arvutiprogrammeerimises on rakenduste programmeerimisliides (API) tavapäraste definitsioonide, protokollide ja tööriistade kogum rakendustarkvara loomiseks. Üldiselt on see erinevate tarkvarakomponentide vahel hästi määratletud suhtlusmeetodite kogum. Hea API muudab arvutiprogrammi arendamise lihtsamaks, pakkudes kõiki ehitusplokke, mille programmeerija seejärel kokku paneb.

See on raske, ah? Võtame akadeemilise proosa ühe pügala alla. Siin on koduse API sõbralikum määratlus:

Lihtsamalt öeldes deklareerib API liidese oma loogikaga suhtlemiseks ilma et peaksite teadma, mis sees toimub. Seda määratlust saab rakendada mis tahes keele, protokolli või keskkonna suhtes, milles viibite, kui see on programmi tasemel(sellest lähemalt allpool).

API-de valgustamiseks loetleme, mis need EI OLE:

    API ei pruugi olla väline teenus. Näiteks saate kaasata teeke otse oma lahendusse VÕI kasutada neid API kaudu.

    API on midagi enamat kui lihtsalt liides. See on nii spetsifikatsioon/vorming kui ka teostus.

    API ei ole GUI (graafiline kasutajaliides). See ei tee suhtlust graafilisel tasemel; see töötab ainult tarkvara tasemel, kas programmeerimiskeele või sideprotokolli kaudu.

API ei ole ka veebikonks. Kui teil on raskusi nende kahe erinevuse mõistmisega, siis siin on veebikonksude tutvustus.

Erinevad API tüübid

Kõik API-d ei ole võrdsed.

Kuigi neil on enamasti sama eesmärk, saavutavad mõned selle paremini kui teised. Kuna see peaks olema sujuv sissejuhatus, ei hakka ma rääkima, mis teeb API teistest paremaks. Kuid pidage meeles, et inimestel on API-de loomisel erinevad lähenemisviisid. Kui olete sellest teemast huvitatud, Google'i "API disainimustrid" ja "API paradigmad". Või alustage lihtsalt selle kena algtaseme artikliga https://translate.googleusercontent.com/translate_c?depth=1&rurl=translate.google.ru&sl=auto&sp=nmt4&tl=ru&u=https://blog.cloudobjects.io/api-design / 2017/04/10/api-design-paradigms/&xid=17259,15700019,15700186,15700190,15700248,15700253&usg=ALkJrhg_fNGoowlGcxshz. :)

API eesmärk on muuta teie elu arendajana lihtsamaks. Kuidas nad seda teevad? Funktsioonide/funktsioonide kogumi kombineerimine ja nende funktsioonide paljastamine lõpp-punktide kaudu (tavaliselt API-ga suhtlemiseks kasutatavad URL-i mustrid). Need lõpp-punktid on ainus viis mis tahes API-ga suhtlemiseks. Igal lõpp-punktil on oma päringute ja vastuste jaoks konkreetne vorming – tavaliselt leiate selle vormingu API dokumentatsioonist.

Lõpp-punktid võivad olla lihtsad funktsioonid või koosneda paljudest funktsioonidest, mis kutsuvad teisi API-sid ja nii edasi. Ainus oluline punkt on see, et nende funktsioonide põhiloogika on täielikult abstraheeritud. Nende kasutamiseks ei pea te teadma, mis nende sees toimub. Niikaua kui kasutate õiget vormingut, saate neid kasutada, mis on väljamõeldud viis, kasutades nende osasid oma rakendusest.

Kokkuvõtteks, API on nagu iga liides: tule lüliti paneb valguse põlema, kas tead, kuidas elektrivoolud töötavad (või sain ka noorena teada, et elektri eest tuleb arve maksta, aga see on teine ​​lugu.)

API kasutamine: praktilised näited

API dokumentatsiooni lugemine ja mõistmine

Dokumentidest on näha, et iga objekti funktsioon kirjeldab, milline peaks olema sisendvorming (arv, numbrite massiiv jne) ja kirjeldab väljundvormingut. Pange tähele, et nende funktsioonide käitamise loogika kohta pole midagi mainitud. Näiteks kui käivitate arendajakonsooli ja Math.sqrt (ilma funktsiooni käivitamata), saate midagi sellist nagu ƒ sqrt() ( ) . See on API-de vaim: olenemata sellest, kas kutsute mõnda oma operatsioonisüsteemi API-d või veebi API-d, jäävad need põhimõtted samaks.

Põhilised API kasutusnäited

Populaarsete API pakkujatega on palju asju teha. Näiteks Google Mapsi API-t kasutatakse sageli kasutajakogemuse parandamiseks reaalajas kuvatavatel kuvadel ja liiklussignaalidel põhinevate andmetega. Twitteri API, veel üks suur, saab kasutada sihitud säutsude reaalajas filtreerimiseks ja kuvamiseks.

Nüüd, kui olete meie ajaveebi jälginud, kahtlustan, et olete veebi API-de vastu rohkem huvitatud kui miski muu. Nii et sukeldume konkreetsetesse kasutusjuhtudesse. Pange tähele, et kasutame oma näidetes Postmani. Loomulikult on see Rest Client seotud veebikeskkonnaga, kuid sellised tööriistad on tavaliselt olemas ka teistes keskkondades. Enne mängima asumist tasub heita pilk antud keskkonna jaoks pakutavatele tööriistadele; võib säästa palju aega.

Kui soovite meid jälgida, peate alla laadima Postmani kliendi. https://www.getpostman.com/

Andmete toomiseks avaliku API kasutamine

Meie esimene näide on üsna lihtne, kuid siiski huvitavam kui matemaatiline.

Kasutame Dog API-t! See pole mitte ainult lõbus API, vaid ei vaja ka autentimist. Lisaks on see HTTP REST API, mis tähendab, et see on veebi API. Kuna see on selle keskkonnaga seotud, nõuab see, et järgiksime mõnda protokolli spetsiifilist funktsiooni: antud juhul HTTP-verbid (GET, PUT, POST, DELETE jne). Meie näites jätame selle lihtsaks ja kasutame ainult GET-verbi. Igal juhul ei luba API teil midagi muud toetada. Enamik avalikke API-sid lubab teil andmeid ainult tarbida, mitte avaldada, näiteks GET-verb.

Käivitame Postmani ja vaatame, kuidas selle kasutajaliides välja näeb.

Minu kasutajaliides kasutab tumedat teemat, nii et see võib teie omast pisut erineda.

Alguses võib seedida palju teavet, nii et alustame VERBist ja URL-ist.

Vaikeverb peaks olema GET, et saaksite selle nii jätta ja sisestada järgmise URL-i: https://dog.ceo/api/breeds/list/all

Vajuta "Saada" ja ongi kõik! Peaksite saama vastuse asjakohaste andmetega. Voila! Tegite just oma esimese API-kõne. Nüüd ei kasuta me selle näite puhul ühtegi saadud andmeid. Kuid teil on idee: saate oma kasutajale näidata erinevaid koeratõuge ja kuvada selle tõu pilti, kui ta sellel klõpsab.

Saate mängida erinevate marsruutidega nende dokumentatsioonis, et tutvuda keskkonnaga.

Lahe fakt: see väike projekt on ka avatud lähtekoodiga, nii et saate seda vaadata siit https://github.com/ElliottLandsborough/dog-ceo-api.

Autentimise käsitlemine privaatse API abil

Siin kasutame koodi ainult Snipcarti API-ga suhtlemiseks https://docs.snipcart.com/api-reference/introduction. Saate Postimehe sulgeda, kuid hoidke seda käepärast; API-ga töötamisel on hea kasutada sellist tööriista.

Eesmärk on luua lihtne CLI tööriist klientidele ühekordse kasutuse allahindluste loomiseks. Need allahindlused luuakse API kaudu ja kõik toimuvad täielikult teie arvutis.

Looge selle projekti jaoks uus kaust, kasutage kaustas npm init ja laadige oma tekstiredaktor. Nüüd looge fail index.js ja avage fail package.json. Selles lisage ülataseme objektile järgmised read:

"bin": ("allahindlused": "./index.js"

Kliendi sisendi sõelumiseks vajame ka käsupaketti. Niisiis, käivitage praeguses kaustas käsk npm install -save. Identifikaatorite loomiseks kasutame ka väikest raamatukogu; Saate selle installida, kasutades käsku npm install -save shortid. Kui oleme asja juures, käivitagem ka npm install -save request lib, et saaksime HTTP-kõnesid lihtsamaks muuta. Minge tagasi faili index.js juurde ja kleepige see kood:

#!/usr/bin/env node var program = nõuda(‘komandör’); var shortid = nõuda('lühike'); var request = nõuda('request'); funktsioon CreateDiscount())( var allahindlus = ( nimi: '20% OFF', päästik: 'Kood', tüüp: 'Rate', määr: 20, maxUsages: 1, kood: shortid.generate() ) request(( url : "http://app.snipcart.com/api/discounts" , auth: ('kasutaja': 'SINU_API_KEY' ), meetod: "POST", json: tõsi, keha: allahindlus ), funktsioon (viga, vastus, body )( console.log(body.code); )); ) programm .arguments(' ') .action(function(number) ( for(var i = parseFloat(number); i > 0; i-)( CreateDiscount ( ); ) )).parse(process.argv);

Keskendume siin lihtsalt päringufunktsioonile. Siin teeme välise API-kutse Snipcartile. Näete, et anname meetodile edasi meetodi: “POST”. Seda seetõttu, et tahame avaldada andmed Snipcart API-s. Selle meetodi määramisel renderdab API toimingu õigesti, et saaks lugeda päringu keha, mis sisaldab allahindlusandmeid.

Huvitav API-funktsioon, mida me pole veel kasutanud, on autentimine. Kõik meie teised näited olid avalikel API-del: need ei vaja autentimist. Kuid reaalse maailma stsenaariumide korral nõuab enamik teie kasutatavaid API-sid tõenäoliselt mingit autentimist, näiteks Twitteri API või Google Mapsi API. See on API maailmas tavaline "muster". Meie kliendid poleks nii õnnelikud, kui laseks kellelgi teisel oma poes allahindlusi teha. ;)

Autentimiskontseptsioonid võivad muutuda üsna tülikaks; Saate lugeda seda lahedat postitust https://translate.googleusercontent.com/translate_c?depth=1&rurl=translate.google.ru&sl=auto&sp=nmt4&tl=ru&u=http://blog.restcase.com/restful-api-authentication- põhitõed /&xid=17259,15700019,15700186,15700190,15700248,15700253&usg=ALkJrhjwWO5yc6nayLpXCQkh_X95B0OZMw teema paremaks valdamiseks.

Oma eesmärgi saavutamiseks edastame API võtme https://translate.googleusercontent.com/translate_c?depth=1&rurl=translate.google.ru&sl=auto&sp=nmt4&tl=ru&u=https://en.wikipedia.org/wiki/Application_programming_interface_key&xid =17259, 15700019,15700186,15700190,15700248,15700253&usg=ALkJrhhpSWyk-nV9379VcrY3TMcKiAdXlQ otse päringus ja kiirusta server tuvastab! Seejärel saab ta esitada ainult meie kontole spetsiifilise päringu.

Kui soovite meie väikest rakendust testida, võite käivitada projekti kataloogis käsu npm install -g ja käivitada lihtsalt allahindlused x, et luua allahindlusi x mitu korda. Võite minna oma Snipcart armatuurlauale (igavesti tasuta kontod testrežiimis) ja veenduda, et allahindlused on õigesti loodud. Võite ette kujutada, kui võimas see võib olla: kui peaksite looma 200 sellist allahindlust, kuluks selle tegemiseks meie kasutajaliidese kaudu liiga palju aega. Kui olete aga API toimimisega tuttavaks saanud, saab seda teha minutitega. Kood on ka korduvkasutatav, nii et kui teil on vaja sama asja kuu aja pärast teha, siis olete valmis!

Kui teil on API-le konkreetseid kasutusjuhtumeid, millest soovite rääkida, kirjutage need kommentaaridesse. Uurime nende lisamist oma sisu teekaardile! :)

Viimased Mõtted

Loodan siiralt, et see õpetus on aidanud teil paremini mõista, mis on API-d ja kuidas saate neid oma arendustöövoos kasutada.

Paar kaasavõtmist:

  • API-d kiirendavad teie kiirust ja laiendavad teie arendusvõimalusi. Kasuta neid!
  • API-d ei pruugi olla veebiökosüsteemiga seotud; Näete neid kõikjal.
  • Kontrollige alati hoolikalt selle API dokumentatsiooni, mida soovite kasutada.
  • Enne kodeerimise alustamist otsige alati oma ökosüsteemist olemasolevaid tööriistu (API-sid või muid).

Nüüd pole meie viimane näide "tootmiseks" valmis, kuid annab hea ettekujutuse sellest, kuidas asjad päriselus välja näha võivad. Meil on palju asju, mida saaksime täiustada, näiteks võimaldada kasutajal valida allahindluse tüüp jne. Võiksime genereeritud koode kasutada ka neile otse e-posti teel saatmiseks samas funktsioonis, selle asemel, et neid lihtsalt registreerida. Kui meil oleks allahindlustööriistade järele suurem vajadus, saaksime API ise kirjutada. Sealt saaksime soovi korral isegi luua kasutajaliidese, mis suhtleb meie API-ga. Igatahes loodan, et saite nüüd ideest aru! :)

Mis on siis järgmine samm? Nagu peaaegu kõik arenduses olevad asjad, peate veel kodeerima, kodeerima, kodeerima ja kodeerima! See tutvustab teile API haldust ja integreerimist. Mõne aja pärast muutute nendega tõhusamaks.

Ja siit algab tõeline lõbu.

Varem või hiljem seisab iga programmeerija silmitsi sellise kontseptsiooniga nagu API. Kuid kui selline kohtumine toimub, ei tea kõik, mis see on, miks seda vaja on ja kuidas seda kasutada. Ja selles artiklis täidan ma selle lünga mõne teie teadmistes ja toon ka näite oma praktikast.

API (rakenduste programmeerimisliides) – see rakenduste programmeerimisliides. Lihtsamalt öeldes on see mitmesuguste funktsioonide, konstantide, klasside ja päringuvormingute kogum, mida saab kasutada teistes programmides.

Seda võib pidada nii API- see on teatud objekt, mille rakendamist me ei tea, kuid saame seda kasutada. Näiteks arvuti on objekt, mille teostust teavad väga vähesed, kuid peaaegu igaüks saab seda kasutada teatud toimingute tegemiseks: videote vaatamiseks, Internetis surfamiseks, teksti printimiseks jne. Vähesed inimesed teavad, kuidas see kõik töötab, kuid peaaegu kõik saavad sellega hakkama.

Näide API on Windows API, OpenGL API, Direct3D API ja nii edasi.

Näiteks mitte kaua aega tagasi puutusin ka otse kokku API. Registreerisin meililisti teenuse kasutajaks" SmartResponder.ru" ja käivitas uudiskirja, mida inimesed hakkasid tellima. Ülesanne oli järgmine: 24 tunni jooksul pärast tellimist saab inimene osta minu tasulise videokursuse soodushinnaga. Kuna kogu teave tellijate kohta on salvestatud serverisse " SmartResponder.ru", seejärel tavaline juurdepääs (näiteks kaudu DB) Mul ei olnud nendele andmetele juurdepääsu, kuid see oli vajalik selle rakendamiseks. Õnneks," SmartResponder.ru"Oma oma API, mida kasutasin.

Ma leidsin neist API tellimusvormingus, et saada selle tulemusena tellimiskuupäev. Edasi läbi cURL Saatsin vastava päringu ja sain konkreetsele vajaliku tellimiskuupäeva e-posti aadressid. Järgmine on standardne töötlemine ja tulemuse väljastamine.

Olete ilmselt näinud terminit "API". Operatsioonisüsteemi, veebibrauseri ja rakenduste värskendused annavad arendajatele sageli teada uutest API-dest. Aga mis on API?

Rakenduse programmeerimisliides

Termin API on akronüüm ja see tähistab rakenduste programmeerimisliidest.

API on nagu restorani menüü. Menüü sisaldab tellitavate roogade loendit, samuti iga roa kirjeldust. Kui määrate, milliseid menüüelemente soovite, teeb restoraniköök selle töö ära ja varustab teid valmistoiduga. Sa ei tea täpselt, kuidas restoran seda toitu valmistab, ega ka vaja.

Samuti pakub API palju toiminguid, mida arendajad saavad kasutada, ja ka nende tegemiste kirjeldust. Arendaja ei pea teadma, kuidas näiteks luuakse operatsioonisüsteem ja kuvatakse dialoogiaken Save As. Nad peavad lihtsalt teadma, et see on rakenduses kasutamiseks saadaval.

See ei ole täiuslik metafoor, kuna arendajad peavad tulemuste saamiseks esitama oma API-andmed, nii et võib-olla on see rohkem nagu väljamõeldud restoran, kus saate köögi jaoks oma koostisosi pakkuda.

API-d võimaldavad arendajatel säästa aega, võimendades olulise töö tegemiseks platvormi juurutamist. See aitab vähendada arendatava koodi hulka ja samuti luua järjepidevust samal platvormil olevate rakenduste vahel. API-d saavad kontrollida juurdepääsu riist- ja tarkvararessurssidele.

API-d muudavad arendajate elu lihtsamaks

Oletame, et soovite arendada iPhone'i rakendust. Apple'i iOS-i operatsioonisüsteem pakub suurel hulgal API-sid, nagu iga teinegi operatsioonisüsteem, et see teie jaoks lihtsamaks muuta.

Näiteks kui soovite ühe või mitme veebilehe kuvamiseks manustada veebibrauseri, ei pea te oma veebibrauserit lihtsalt oma rakenduse jaoks nullist programmeerima. Sina
WebKiti (Safari) veebibrauseri manustamiseks oma rakendusse saate kasutada WKWebView API-d.

Kui soovite iPhone'i kaameraga fotosid või videoid teha, ei pea te oma kaameraliidest kirjutama. Saate kasutada kaamera API-d iPhone'i kaamera manustamiseks oma rakendusse. Kui API-d poleks olemas, peaksid rakenduste arendajad looma oma kaameratarkvara ja tõlgendama kaamera riistvara sisendeid. Kuid Apple'i operatsioonisüsteemi arendajad on teinud kogu selle raske töö, nii et arendajad saavad kaamera manustamiseks kasutada lihtsalt kaamera API-d ja seejärel jätkata oma rakenduse kirjutamist. Ja kui Apple täiustab kaamera API-d, kasutavad kõik seda kasutavad rakendused seda täiustust automaatselt ära.

See kehtib kõigi platvormide kohta. Näiteks kas soovite luua Windowsis dialoogiboksi? Selle jaoks on olemas API. Kas soovite Androidis sõrmejäljega autentimist toetada? Selle jaoks on API, nii et te ei pea testima iga Androidi tootja iga sõrmejäljeandurit. Arendajad ei pea jalgratast ikka ja jälle leiutama.

API-d kontrollivad juurdepääsu ressurssidele

API-sid kasutatakse ka juurdepääsu kontrollimiseks riistvaraseadmetele ja tarkvarafunktsioonidele, mille kasutamiseks rakendusel ei pruugi olla luba. Seetõttu mängivad API-d turvalisuses sageli suurt rolli.

Näiteks kui olete kunagi külastanud veebisaiti ja näinud oma brauseris teadet, et veebisait küsib teie täpset asukohta, proovib see veebisait teie veebibrauseris kasutada geograafilise asukoha API-t. Veebibrauserid pakuvad API-sid, et hõlbustada veebiarendajatel teie asukohale juurdepääsu – nad saavad lihtsalt küsida „kus te olete?” ja brauser teeb teie füüsilise asukoha leidmiseks GPS-i või lähedalasuvate WiFi-võrkude juurde pääsemiseks raske töö. .

Kuid brauserid avaldavad selle teabe ka API-de kaudu, kuna juurdepääsu sellele saab kontrollida. Kui veebisait soovib juurdepääsu teie täpsele asukohale, on ainus viis selle saamiseks asukoha API kaudu. Ja kui veebisait proovib seda kasutada, saate teie – kasutaja – taotluse lubada või tagasi lükata. Riistvararessurssidele, nagu GPS-andur, pääseb juurde ainult API kaudu, nii et brauser saab juhtida juurdepääsu riistvarale ja piirata rakenduste tegevust.

Sama põhimõtet kasutatakse tänapäevaste mobiilsete operatsioonisüsteemide (nt iOS ja Android) puhul, kus mobiilirakendustel on õigused, mida saab jõustada API-dele juurdepääsu kontrollimisega. Näiteks kui arendaja üritab kaamera API kaudu kaamerale juurde pääseda, saate loataotluse keelata ja rakendusel puudub juurdepääs teie seadme kaamerale.

Lube kasutavatel failisüsteemidel, nagu Windows, Mac ja Linux, on need õigused, mida jõustab failisüsteemi API. Tüüpilisel rakendusel pole otsest juurdepääsu töötlemata füüsilisele kõvakettale. Selle asemel peab rakendus pääsema failidele juurde API kaudu.

API-sid kasutatakse teenustevaheliseks suhtluseks

API-sid kasutatakse ka muudel põhjustel. Näiteks kui olete kunagi näinud veebisaidile manustatud Google Mapsi objekti, kasutab see veebisait selle kaardi manustamiseks Google Mapsi API-t. Google pakub selliseid API-sid veebiarendajatele, kes saavad seejärel kasutada API-sid keeruliste objektide kokkupanemiseks otse oma veebisaidil. Kui selliseid API-sid pole, peavad arendajad looma oma kaardid ja esitama oma kaardiandmed, et veebilehel väikest interaktiivset kaarti majutada.

Ja kuna tegemist on API-ga, saab Google juhtida juurdepääsu Google Mapsile kolmandate osapoolte veebisaitidel, tagades, et nad kasutavad seda järjepidevalt, selle asemel et proovida juhuslikult rakendada näiteks Google Mapsi veebisaidil kuvatavat raami.

See kehtib paljude erinevate võrguteenuste kohta. Google'i tõlke kaudu teksti tõlke taotlemiseks või veebisaidil Facebooki kommentaaride või Twitteri säutsude kuvamiseks on API-liidesed.

OAuthi standard määratleb ka mitmeid API-sid, mis võimaldavad teil saidile sisse logida mõne muu teenuse kaudu, näiteks kasutades oma Facebooki, Google'i või Twitteri kontosid uuele veebisaidile sisselogimiseks, ilma et peaksite looma uut kasutajakontot ainult selle saidi jaoks. API-d on standardlepingud, mis määravad, kuidas arendajad teenusega suhtlevad ja millist väljundit arendajad peaksid ootama.

Kui olete seda artiklit lugenud, saate paremini aru, mis API on. Lõppkokkuvõttes ei pea te teadma, mis API on, välja arvatud juhul, kui olete arendaja. Kuid kui näete, et tarkvaraplatvorm või teenus on lisanud erinevatele riistvaradele või teenustele uusi API-sid, peaks arendajatel olema selliseid funktsioone lihtsam kasutada.

API on väline liides rakenduse programmeerimiseks, saitidele juurdepääsuks spetsiaalse protokolli abil teabe hankimiseks ja siseteenustega seotud programmide lihtsustatud arendamiseks.

Mida API tähendab?

Lihtsaim analoogia API kasutamisel oleks keerukate arvutuste tegemiseks kasutada kalkulaatorit. Oletame, et teil on ülesanne, saate aru selle olemusest, koostada võrrandeid ja graafikuid, kuid te ei tea, kuidas arvudega aritmeetilisi tehteid teha. Teie kõrval on kalkulaator, millega saab neid toiminguid hõlpsalt teha. Sa ei tea, mis arvuti sees toimub, ja sa ei peagi teadma. Annate teavet ühel kujul ja saate selle teisel kujul, mis on teie eesmärkide saavutamiseks vajalik.

Iga API töötab sellel põhimõttel. Teid ei huvita, kuidas programm vastuse saab, millist teed päring selle sees liigub, kuidas arvutusi tehakse. Olete kindel vaid ühes – vastuseks antakse standardiseeritud teave operatsiooni õnnestumise või selle vea kohta.

API liides võimaldab teil mitte raisata oma aega, raha ja vaeva uue ratta ostmisele. Saate töötava teabepordi, mis võtab vastu ja saadab teie arenduse jaoks vajalikke andmemahtusid.

Plussid:

  • Säästke oma liidese väljatöötamisel.
  • Küsimuse nüansse pole vaja mõista.
  • API-d on välja töötanud professionaalid ja need võtavad arvesse kõiki sisemiste protsesside tegureid, millest te oma lahenduse loomisel ei pruugi teadlik olla.
  • Võimaldab suhelda teenustega, mis on suletud muude protokollide kaudu.

Miinused:

  • Kui sihtteenust värskendatakse, ei saa API alati kohe kõiki funktsioone.
  • Te ei saa vigu tabada ega tea, kuidas protsess kellegi teise koodis töötab.
  • API ei anna alati ajaliselt kõige optimaalsemat tulemust, kuna see on loodud käsitlema üldist, mitte konkreetset juhtumit.

API näited

API integreerimine on protsess, mille käigus ühendatakse rakendus välise andmeliidesega. API-ga töötamine algab kasutatud dokumentatsiooni ja protokollide uurimisega ning seejärel programmi otse liidesesse integreerimisega. Vaatame kõige populaarsemaid teenuseid, millel on oma API.

VKAPI

Väline liides populaarse suhtlusvõrgustiku VKontakte suhtlemiseks klientidega, aga ka brauseri- ja serverirakendustega. Võimaldab hallata kogukonna sõnumeid, gruppide kaaneid, kasutajalehti, kui teil on sobivad juurdepääsuklahvid.

Kõik taotlused esitatakse aadressile https://api.vk.com/method/

Pärast kaldkriipsu tuleb kasutatud API meetodi nimi ja päringu GET parameetrid edastatakse. Vastus tuleb ka HTTPS-i kaudu JSON-vormingus.

TELEGRAM BOT API

Üks populaarsemaid API-sid. Seda kasutatakse robotite juhtimiseks Telegrami messengeris. Pärast roboti loomist @botfather kaudu ja vajalike juurdepääsuvõtmete hankimist saate alustada taustaprogrammiga suhtlemist.

Taotlusi saab esitada: https://api.telegram.org/bot0000000:token/

Kus bot0000000 asendatakse teie roboti kordumatu identifikaatoriga ja token väljendab salajast võtit.

Päringud saadetakse HTTPS ühenduste kaudu, meetodi nimi märgitakse põhiaadressile kaldkriipsuga. Vastus tuleb JSON-vormingus.

AVA ILMAKAARDI API

Sageli on vaja ilmateavet hankida ilma kolmandate osapoolte vidinaid ja tasulisi rakendusi kasutamata. OpenWeatherMap teenus tuleb appi avatud ja tasuta API-ga. Pärast registreerimist ja identifitseerimisandmete saamist saate saata ilmapäringuid serveriskriptidest üle maailma. Vastuseks linna ID-le tagastab ressurss kõige üksikasjalikuma teabe praeguse ilma kohta ja annab prognoosi lähitulevikuks.

Formaat: HTTP-edastus api.openweathermap.org/data/2.5/weather?id= kaudu, mis näitab soovitud linna identifitseerimisnumbrit. Serveri vastus: JSON.

GOOGLE MAPS API

Mis võiks olla toredam kui interaktiivne maailmakaart veebisaidil? Eriti kui see pole Google Mapsi malli lisamine, vaid teie isiklik väljaanne populaarsest kaardist koos isiklike markerite rühmadega. Kaart suhtleb saidi teiste skriptidega, saates teavet klikkide ja koordinaatide kohta.

Google Mapsi JavaScripti API pakub sarnaseid võimalusi. Moodul on täielikult skriptitud ja töötab brauseri poolel, nii et me ei vaja HTTP-päringuid PHP-lt ja päiste moodustamist serveri poolel, nagu see oli teiste API-de puhul.

Näiteks markeri paigutamine kaardile näeb välja selline:

var mark = new google.maps.Marker((
positsioon: myPOS,
kaart: kaart,
pealkiri: "Tere!"
});

Mis on API kasutamise vajadus ja eelised?

Seal on päris palju kasulikke funktsioone.

Esimene aspekt

Saate luua interaktiivse kasutaja suhtluse sotsiaalvõrgustike ja kiirsõnumite saatjatega, kasutada kolmandate osapoolte arvutisüsteemide võimalusi vahetuskursside, ilmateate ja muu olulise teabe kuvamiseks.

API abil saate koheselt serveritega ühendada muid ressursse ja tarkvaralahendusi, mille arendamiseks kulub tavaliselt nädalaid. API lihtsustab elu seal, kus pole vaja ainulaadset juurutust ning töökindlus ja turvalisus on prioriteediks.

Teine aspekt

Kui olete keeruka arvutusvõimsuse, populaarse teenuse või andmesalvestuse omanik avaliku või poolprivaatse juurdepääsu jaoks, oleks hea samm oma API-liidese suurendamine. Mida see annab:

  • Suur klientide voog.
  • Partnerite jaoks lihtsustatud juurdepääs teie teenustele.
  • Teenuste kasutamise statistilise analüüsi mugavus.

Kolmas aspekt

Peaaegu sama, mis teine. Kuid ilma avatud juurdepääsu API juurutamata. Kui teil on portaal ja soovite selle jaoks Androidi/IOS-i mobiilirakendust luua, siis on parim lahendus süsteemi ümberkirjutamine ühe API alla. Kogu andmestruktuur on süstematiseeritud. Sait ja rakendus töötavad ühtsete andmekanalite kaudu.