Priekšrocības:

Veidi

  • atgriežoties. Kad trešās puses lietojumprogramma pieprasa metodi ar noteiktiem parametriem, serveris nodrošina pieprasīto informāciju noteiktā formātā;
  • mainās. Klients izsauc kādu servera funkciju, kas ievada jaunu informāciju vai maina tajā noteiktus iestatījumus.

Yandex.Direct API

API ir efektīva vietņu reklamēšanai.

  1. Pamatojoties uz to, izstrādātāji var izveidot lietojumprogrammas, kas tieši mijiedarbojas ar meklētājprogrammas pakalpojumu. Šādas programmas ļaus reklāmdevējiem elastīgi pārvaldīt liela mēroga reklāmas, saņemt statistikas atskaites par katru no tām un precīzi prognozēt budžetus.
  2. Izmantojot Direct API, reklāmas aģentūras var skatīt visu savu klientu sarakstu, bet klienti - savus pārstāvjus.
  3. Ja noteiktas frāzes, kas tiek izmantotas meklētājprogrammu optimizācijai, rada zemu VKS kontekstuālajā reklāmā, to attēlošana var tikt automātiski atspējota. Tematiskajās platformās varat iestatīt likmes, izmantojot API; dažus donorus var noņemt.
  4. Yandex.Direct API ir SOAP interfeiss, tas ir, tas nodrošina plašu programmēšanas valodu izvēli lietojumprogrammu izveidei. Šo protokolu atbalsta tādas valodas kā Perl, Java, Python utt. Datu apmaiņu var veikt arī JSON formātā.

Ja strādājat pat attālināti tīmekļa izstrādes nozares tuvumā, varat būt 100% pārliecināts, ka dzirdēsit šos trīs bēdīgi slavenos burtus: API.

Sarunas par viņiem ir izkaisītas starp nieciņiem un ekspertiem:

"Kāpēc man vajadzētu veikt API zvanu? Vai viņam ir numurs?

"Vienkāršs šīs trešās puses API izsaukums palīdzēs jums to sasniegt."

“Mēs jums izveidosim RESTful API; pārliecinieties, vai jūsu jaunā sistēma labi darbojas ar citiem pakalpojumiem.

Lai gan API sākotnēji var šķist biedējoši, tie burtiski var mainīt jūsu kā izstrādātāja dzīvi.

Par ko? Mācīšanās pareizi lietot API var vienkāršot, paātrināt un stiprināt izstrādes darbplūsmu. API izveide vai integrēšana sniedz ievērojamas priekšrocības gan jūsu klientiem, gan jums.

Kā izstrādātāji jūs bieži dzirdat padomu “neizgudrojiet riteni no jauna”:

joks:
gudrs padoms: neizgudrojiet riteni no jauna
programmētājs: labi
nekad vairs neraksta pielāgotu kodu

Pieņemot jokus, API ir svarīga loma, lai jūs neizgudrotu riteni no jauna. Snipcar mēs esam pārliecināti, ka API pamatu izpratne ir mūsdienu tīmekļa izstrādātāju galvenā prasme. Šajā rakstā mēs jums palīdzēsim to izdarīt. Mēs apsvērsim:

API izmantošanas priekšrocības Kas patiesībā ir API Kādi API veidi pastāv? Praktiski piemēri API lietošanai

Nu, vai nav pienācis laiks tajā ienirt?

API priekšrocības: kāpēc tās izmantot?

Viens no pirmajiem, svarīgākajiem soļiem manā programmēšanas karjerā bija pareiza API izpratne.

Es joprojām tos lietoju katru dienu.

Pirms iedziļināties sīkumos, ļaujiet man vispirms jūs pārliecināt, ka API izpratne ir jūsu laika vērta.

Tā kā API izmantošanas apguve ievērojami uzlabo jūsu izstrādes efektivitāti.

Pirmkārt, tas ļauj izmantot esošu loģika vai daļas, kas tev pašam nav jāraksta. Dažas lietas, kuras jūs, iespējams, nevarēsit uzrakstīt pats! Tāpēc, lai ietaupītu vērtīgo laiku, kā izstrādātājam ir ļoti svarīgi iegūt priekšstatu par to, kā izskatās API.

Otrkārt, daudzas no attīstības problēmām, ar kurām jūs saskarsities, jau ir atrisinājis kāds cits pirms jums. Neatkarīgi no šo esošo risinājumu veida (FaaS, bibliotēkas, tīmekļa pakalpojumi, SDK, satura API utt.), visticamāk, jums būs nepieciešama API, lai ar tiem mijiedarbotos.

Tātad, kas ir API?

Oficiālā, biedējošā definīcija ir šāda:

Datorprogrammēšanā lietojumprogrammu saskarne (API) ir parasto definīciju, protokolu un rīku kopums lietojumprogrammatūras izveidei. Vispārīgi runājot, tas ir labi definētu saziņas metožu kopums starp dažādiem programmatūras komponentiem. Laba API atvieglo datorprogrammas izstrādi, nodrošinot visus komponentus, ko programmētājs pēc tam saliek.

Tas ir grūti, vai ne? Pieņemsim akadēmisko prozu uz leju. Šeit ir draudzīgāka mājas API definīcija:

Vienkārši sakot, API deklarē interfeisu tās loģikai, ar kuru mijiedarboties nezinot, kas notiek iekšā. Šo definīciju var attiecināt uz jebkuru valodu, protokolu vai vidi, kurā atrodaties, ja vien tā atrodas programmas līmenī(vairāk par to zemāk).

Lai nedaudz izgaismotu API, uzskaitīsim, kas tās NAV:

    API ne vienmēr ir ārējs pakalpojums. Piemēram, varat iekļaut bibliotēkas tieši savā risinājumā VAI izmantot tās, izmantojot API.

    API ir vairāk nekā tikai saskarne. Tā ir gan specifikācija/formāts, gan ieviešana.

    API nav GUI (grafiskā lietotāja saskarne). Tas neveic mijiedarbību grafiskā līmenī; tas darbojas tikai programmatūras līmenī, izmantojot programmēšanas valodu vai sakaru protokolu.

API arī nav tīmekļa āķis. Ja jums ir grūti saprast atšķirību starp abiem, šeit ir ievads par Web Hooks.

Dažādi API veidi

Visas API nav vienādas.

Lai gan viņiem lielākoties ir viens un tas pats mērķis, daži to sasniedz labāk nekā citi. Tā kā šim ievadam vajadzētu būt vienmērīgam, es nerunāšu par to, kas padara API labāku par citām. Tomēr ņemiet vērā, ka cilvēkiem ir dažādas pieejas API izveidei. Ja jūs interesē šī tēma, Google "API dizaina modeļi" un "API paradigmas". Vai arī vienkārši sāciet ar šo jauko sākuma līmeņa rakstu 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_fNGoowl7u4xxhz. :)

API mērķis ir atvieglot jūsu kā izstrādātāja dzīvi. Kā viņi to dara? Apvienojot funkciju/līdzekļu kolekciju un atklājot šīs funkcijas, izmantojot galapunktus (parasti URL rakstus, ko izmanto mijiedarbībai ar API). Šie galapunkti ir vienīgais veids, kā mijiedarboties ar jebkuru API. Katram galapunktam būs noteikts pieprasījumu un atbilžu formāts — parasti šis formāts ir atrodams API dokumentācijā.

Galapunkti var būt vienkāršas funkcijas vai sastāv no daudzām funkcijām, kas izsauc citas API un tā tālāk. Vienīgais svarīgais punkts ir tas, ka šo funkciju galvenā loģika ir pilnībā abstrahēta. Lai tos izmantotu, nav vajadzīgas nekādas zināšanas par to, kas tajās notiek. Ja vien izmantosit pareizo formātu, varēsit tos izmantot, kas ir izdomāts veids, izmantojot daļu no jūsu lietojumprogrammas.

Būtībā API ir kā jebkura saskarne: gaismas slēdzis ieslēgs gaismu neatkarīgi no tā, vai jūs zināt, kā darbojas elektriskās strāvas (vai arī es jau jaunībā uzzināju, ka jums ir jāmaksā rēķins, lai tas darbotos par elektrību, bet tas ir cits stāsts.)

Kā lietot API: praktiski piemēri

API dokumentācijas lasīšana un izpratne

No dokumentiem var redzēt, ka katra objekta funkcija apraksta, kādam jābūt ievades formātam (skaitlis, skaitļu masīvs utt.) un apraksta izvades formātu. Tomēr ņemiet vērā, ka nekas nav minēts par šo funkciju palaišanas loģiku. Piemēram, ja palaižat izstrādātāja konsoli un Math.sqrt (neizpildot funkciju), jūs iegūsit kaut ko līdzīgu ƒ sqrt() ( ) . Tāda ir API būtība: neatkarīgi no tā, vai izsaucat kādu no savas operētājsistēmas API vai tīmekļa API, šie principi paliek nemainīgi.

Pamata API lietošanas piemēri

Ir daudz lietu, ko darīt ar populāriem API nodrošinātājiem. Piemēram, Google Maps API bieži izmanto, lai uzlabotu lietotāja pieredzi ar datiem, kuru pamatā ir reāllaika displeji un satiksmes signāli. Twitter API, vēl viena liela, var izmantot, lai filtrētu un parādītu mērķtiecīgus tvītus reāllaikā.

Tagad, ja esat sekojis mūsu emuāram, man ir aizdomas, ka jūs vairāk interesē tīmekļa API nekā jebkas cits. Tātad, iedziļināsimies īpašos lietošanas gadījumos. Lūdzu, ņemiet vērā, ka savos piemēros izmantosim Postman. Protams, šis Rest Client ir saistīts ar tīmekļa vidi, taču šādi rīki parasti pastāv arī citās vidēs. Pirms sākat spēlēties ar to, ir vērts apskatīt konkrētajai videi paredzētos rīkus; var ietaupīt daudz laika.

Ja vēlaties mums sekot, jums ir nepieciešams lejupielādēt Postman klientu. https://www.getpostman.com/

Publiskās API izmantošana datu izgūšanai

Mūsu pirmais piemērs būs diezgan vienkāršs, bet tomēr interesantāks par matemātisko.

Mēs izmantosim Dog API! Tas ir ne tikai jautrs API, bet arī neprasa nekādu autentifikāciju. Turklāt tā ir HTTP REST API, kas nozīmē, ka tā ir tīmekļa API. Tā kā tas ir saistīts ar šo vidi, mums ir jāievēro dažas īpašas protokola funkcijas: šajā gadījumā HTTP darbības vārdi (GET, PUT, POST, DELETE utt.). Mūsu piemērā mēs to saglabāsim vienkārši un izmantosim tikai darbības vārdu GET. Jebkurā gadījumā API neļauj jums atbalstīt neko citu. Lielākā daļa publisko API ļauj tikai patērēt datus, nevis tos publicēt, piemēram, GET darbības vārdu.

Palaidīsim Postman un redzēsim, kā izskatās tā lietotāja saskarne.

Manā lietotāja saskarnē tiek izmantots tumšs motīvs, tāpēc tas var izskatīties nedaudz savādāk nekā jūsējā.

Sākumā var būt ļoti daudz informācijas, tāpēc sāksim ar VERB un URL.

Noklusējuma darbības vārdam ir jābūt GET, lai jūs varētu to atstāt šādā veidā un ievadīt šādu URL: https://dog.ceo/api/breeds/list/all

Noklikšķiniet uz "Sūtīt" un viss! Jums vajadzētu saņemt atbildi ar attiecīgajiem datiem. Voila! Jūs tikko veicāt savu pirmo API zvanu. Tagad šim piemēram mēs neizmantosim nevienu no saņemtajiem datiem. Bet jums ir ideja: varat parādīt lietotājam dažādas suņu šķirnes un parādīt šīs šķirnes attēlu, ja viņš uz tā noklikšķina.

Varat spēlēt ar dažādiem maršrutiem to dokumentācijā, lai iepazītos ar vidi.

Foršs fakts: šis mazais projekts ir arī atvērts avots, tāpēc varat to pārbaudīt šeit https://github.com/ElliottLandsborough/dog-ceo-api.

Autentifikācijas apstrāde, izmantojot privāto API

Šeit mēs izmantosim kodu tikai, lai mijiedarbotos ar Snipcart API https://docs.snipcart.com/api-reference/introduction. Jūs varat aizvērt Pastnieku, bet turiet to pa rokai; Ir lietderīgi izmantot šādu rīku, darbojoties ar API.

Mērķis būs izveidot vienkāršu CLI rīku, lai klientiem radītu vienreizējas lietošanas atlaides. Šīs atlaides tiks ģenerētas, izmantojot API, un tās tiks pilnībā izmantotas jūsu datorā.

Izveidojiet šim projektam jaunu mapi, izmantojiet mapē npm init un ielādējiet teksta redaktoru. Tagad izveidojiet failu index.js un pēc tam atveriet failu package.json. Tajā augšējā līmeņa objektam pievienojiet šādas rindas:

“bin”: (“atlaides”: “./index.js”)

Mums būs nepieciešama arī komandiera pakotne, lai parsētu klienta ievadi. Tātad pašreizējā mapē palaidiet komandu npm install -save. Mēs izmantosim arī nelielu bibliotēku, lai izveidotu identifikatorus; Varat to instalēt, izmantojot npm install -save shortid. Kamēr esam pie tā, izpildīsim arī npm install -save request lib, lai mēs varētu atvieglot HTTP zvanus. Atgriezieties failā index.js un ielīmējiet šo kodu:

#!/usr/bin/env node var programma = request('pavēlnieks'); var shortid = prasīt('īss'); var pieprasījums = pieprasīt('pieprasījums'); funkcija CreateDiscount())( var atlaide = ( nosaukums: '20% OFF', trigeris: 'Kods', veids: 'Likums', likme: 20, maxUsages: 1, kods: shortid.generate() ) pieprasījums(( url : “http://app.snipcart.com/api/discounts” , auth: ('lietotājs': 'YOUR_API_KEY' ), metode: "POST", json: true, body: atlaide ), funkcija (kļūda, atbilde, body )( console.log(body.code); )); ) programma .arguments(' ') .action(function(number) ( for(var i = parseFloat(number); i > 0; i-)( CreateDiscount ( ); ) )).parse(process.argv);

Šeit pievērsīsimies tikai pieprasījuma funkcijai. Šeit mēs veicam ārēju API izsaukumu uz Snipcar. Var redzēt, ka mēs nododam metodi: “POST” metodei. Tas ir tāpēc, ka mēs vēlamies publicēt datus Snipcar API. Norādot šo metodi, API pareizi atveidos darbību, lai tā varētu nolasīt pieprasījuma pamattekstu, kurā ir atlaižu dati.

Interesanta API funkcija, kuru mēs vēl neesam izmantojuši, ir autentifikācija. Visi pārējie mūsu piemēri bija par publiskajām API: tiem nav nepieciešama autentifikācija. Taču reālās pasaules scenārijos lielākajai daļai jūsu izmantoto API, iespējams, būs nepieciešama kāda veida autentifikācija, piemēram, Twitter API vai Google Maps API. Šis ir standarta "raksts" API pasaulē. Mūsu klienti nebūtu tik priecīgi, ja ļautu kādam citam izveidot atlaides viņu veikalā. ;)

Autentifikācijas jēdzieni var kļūt diezgan apgrūtinoši; Varat izlasīt šo lielisko ziņu 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- pamati /&xid=17259,15700019,15700186,15700190,15700248,15700253&usg=ALkJrhjwWO5yc6nayLpXCQkh_X95B0OZMw, lai labāk apgūtu tēmu.

Mūsu vajadzībām mēs nododam API atslēgu 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 tieši pieprasījumā, un steigā serveris atpazīst! Pēc tam tas var iesniegt pieprasījumu tikai mūsu kontam.

Ja vēlaties pārbaudīt mūsu mazo lietojumprogrammu, projekta direktorijā varat palaist npm install -g un vienkārši palaist atlaides x, lai izveidotu atlaides x reižu skaitu. Varat doties uz savu Snipcart informācijas paneli (mūžīgi bezmaksas konti testa režīmā) un pārliecināties, vai atlaides ir izveidotas pareizi. Varat iedomāties, cik tas var būt spēcīgs: ja jums būtu jāizveido 200 no šīm atlaidēm, tas aizņemtu pārāk daudz laika, lai to izdarītu, izmantojot mūsu lietotāja interfeisu. Tomēr, kad esat iepazinies ar API darbību, to var izdarīt dažu minūšu laikā. Kods ir arī atkārtoti lietojams, tāpēc, ja jums ir jādara tas pats pēc mēneša, jūs esat gatavs!

Ja jums ir konkrēti API lietošanas gadījumi, par kuriem vēlaties runāt, lūdzu, ierakstiet tos komentāros. Mēs izskatīsim iespēju tos pievienot mūsu satura ceļvedim! :)

Pēdējās domas

Es patiesi ceru, ka šī apmācība ir palīdzējusi jums labāk izprast, kas ir API un kā jūs varat tās izmantot savā izstrādes darbplūsmā.

Dažas līdzņemšanas:

  • API paātrinās jūsu ātrumu un paplašinās jūsu izstrādes iespējas. Izmantojiet tos!
  • API ne vienmēr ir saistītas ar tīmekļa ekosistēmu; Jūs tos redzēsit visur.
  • Vienmēr rūpīgi pārbaudiet tās API dokumentāciju, kuru vēlaties izmantot.
  • Pirms kodēšanas vienmēr meklējiet savā ekosistēmā esošos rīkus (API vai citus).

Tagad mūsu pēdējais piemērs nav gatavs "ražošanai", taču tas sniedz jums labu priekšstatu par to, kā lietas varētu izskatīties reālajā dzīvē. Ir daudzas lietas, ko mēs varētu uzlabot, piemēram, ļaut lietotājam izvēlēties atlaides veidu utt. Mēs varētu arī izmantot ģenerētos kodus, lai tos nosūtītu pa e-pastu tieši tajā pašā funkcijā, nevis tikai reģistrētu tos. Ja mums būtu lielākas vajadzības pēc mūsu atlaižu rīkiem, mēs paši varētu rakstīt API. No turienes mēs pat varētu izveidot lietotāja saskarni, kas mijiedarbojas ar mūsu API, ja mēs to vēlētos. Jebkurā gadījumā es ceru, ka jūs tagad sapratāt ideju! :)

Tātad, kāds ir nākamais solis? Tāpat kā gandrīz viss izstrādes procesā, jums ir jākodē, jākodē, jākodē un jākodē vēl daži! Tas jūs iepazīstinās ar API pārvaldību un integrāciju. Pēc kāda laika jūs kļūsiet efektīvāki ar tiem.

Un šeit sākas īstā jautrība.

Agrāk vai vēlāk jebkurš programmētājs saskaras ar tādu jēdzienu kā API. Tomēr, kad notiek šāda tikšanās, ne visi zina, kas tas ir, kāpēc tas ir vajadzīgs un kā to izmantot. Un šajā rakstā es aizpildīšu šo robu dažu no jums zināšanās, kā arī sniegšu piemēru no savas prakses.

API (lietojumprogrammu saskarne) - Šis lietojumprogrammu saskarne. Vienkāršāk sakot, šī ir dažādu funkciju, konstantu, klašu un vaicājuma formātu kopa, ko var izmantot citās programmās.

Tā var uzskatīt API- tas ir noteikts objekts, kura realizāciju mēs nezinām, tomēr varam to izmantot. Piemēram, dators ir objekts, kura realizāciju zina ļoti maz cilvēku, tomēr ar to gandrīz katrs var veikt kādas darbības: skatīties video, sērfot internetā, drukāt tekstu utt. Tikai daži cilvēki zina, kā tas viss darbojas, bet gandrīz visi to var izdarīt.

Piemērs API ir Windows API, OpenGL API, Direct3D API un tā tālāk.

Piemēram, pirms neilga laika es arī saskāros tieši API. Es reģistrējos adresātu saraksta pakalpojumam" SmartResponder.ru" un uzsāka biļetenu, kuru cilvēki sāka abonēt. Uzdevums bija šāds: 24 stundu laikā pēc abonēšanas persona var iegādāties manu maksas video kursu ar atlaidi. Tā kā visa informācija par abonentiem tiek glabāta serverī " SmartResponder.ru", pēc tam parastā piekļuve (piemēram, caur DB) Man nebija piekļuves šiem datiem, taču bija nepieciešams tos ieviest. Par laimi, " SmartResponder.ru"ir savs API, ko izmantoju.

Es tajos atradu API pieprasījuma formātā, lai iegūtu abonēšanas datumu. Tālāk cauri cURL Nosūtīju atbilstošo pieprasījumu un saņēmu nepieciešamo abonēšanas datumu konkrētam e-pasta adreses. Nākamais ir standarta apstrāde un rezultāta izvade.

Jūs droši vien esat redzējuši terminu "API". Operētājsistēmas, tīmekļa pārlūkprogrammas un lietojumprogrammu atjauninājumi izstrādātājiem bieži paziņo par jauniem API. Bet kas ir API?

Lietojumprogrammu interfeiss

Termins API ir akronīms, un tas apzīmē lietojumprogrammu interfeisu.

API ir kā ēdienkarte restorānā. Ēdienkartē ir saraksts ar ēdieniem, kurus varat pasūtīt, kā arī katra ēdiena apraksts. Kad jūs norādāt, kādus ēdienkartes elementus vēlaties, restorāna virtuve paveic darbu un nodrošina jūs ar gatavo ēdienu. Jūs precīzi nezināt, kā restorāns gatavo šo ēdienu, un jums tas nav jādara.

Tāpat API nodrošina daudzas darbības, ko izstrādātāji var izmantot, kā arī aprakstu par to, ko viņi dara. Izstrādātājam nav jāzina, kā, piemēram, tiek izveidota operētājsistēma un tiek parādīts dialoglodziņš Saglabāt kā. Viņiem vienkārši jāzina, ka tas ir pieejams lietošanai lietojumprogrammā.

Šī nav ideāla metafora, jo izstrādātājiem, iespējams, būs jāiesniedz savi API dati, lai iegūtu rezultātus, tāpēc, iespējams, tas vairāk atgādina izsmalcinātu restorānu, kurā varat nodrošināt dažas no savām sastāvdaļām virtuvei, ar kurām strādāt.

API ļauj izstrādātājiem ietaupīt laiku, izmantojot platformas ieviešanu, lai paveiktu svarīgu darbu. Tas palīdz samazināt izstrādājamā koda daudzumu, kā arī palīdz izveidot konsekvenci starp lietojumprogrammām vienā platformā. API var kontrolēt piekļuvi aparatūras un programmatūras resursiem.

API atvieglo izstrādātāju dzīvi

Pieņemsim, ka vēlaties izstrādāt iPhone lietojumprogrammu. Apple iOS operētājsistēma, tāpat kā jebkura cita operētājsistēma, nodrošina lielu skaitu API, lai to atvieglotu.

Piemēram, ja vēlaties iegult tīmekļa pārlūkprogrammu, lai parādītu vienu vai vairākas tīmekļa lapas, jums nav jāieprogrammē sava tīmekļa pārlūkprogramma no jauna tikai savai lietojumprogrammai. Tu
Varat izmantot WKWebView API, lai savā lietojumprogrammā iegultu WebKit (Safari) tīmekļa pārlūkprogrammu.

Ja vēlaties uzņemt fotoattēlus vai video no iPhone kameras, jums nav jāraksta savs kameras interfeiss. Varat izmantot kameras API, lai iegultu iPhone kameru savā lietotnē. Ja API nepastāvētu, lietotņu izstrādātājiem būtu jāizveido sava kameras programmatūra un jāinterpretē kameras aparatūras ievades. Taču Apple operētājsistēmu izstrādātāji ir paveikuši visu šo smago darbu, tāpēc izstrādātāji var vienkārši izmantot kameras API, lai iegultu kameru un pēc tam turpinātu rakstīt savu lietotni. Un, kad Apple uzlabo kameras API, visas lietotnes, kas to izmanto, automātiski izmantos šī uzlabojuma priekšrocības.

Tas attiecas uz visām platformām. Piemēram, vai vēlaties izveidot dialoglodziņu sistēmā Windows? Šim nolūkam ir API. Vai vēlaties atbalstīt pirkstu nospiedumu autentifikāciju operētājsistēmā Android? Šim nolūkam ir API, tāpēc jums nav jāpārbauda katrs pirkstu nospiedumu sensors no katra Android ražotāja. Izstrādātājiem nav atkal un atkal jāizgudro ritenis.

API kontrolē piekļuvi resursiem

API tiek izmantotas arī, lai kontrolētu piekļuvi aparatūras ierīcēm un programmatūras līdzekļiem, kurus lietojumprogrammai, iespējams, nav atļauts izmantot. Tāpēc API bieži vien spēlē lielu lomu drošībā.

Piemēram, ja kādreiz esat apmeklējis vietni un savā pārlūkprogrammā redzējis ziņojumu, ka vietne pieprasa precīzu jūsu atrašanās vietu, šī vietne jūsu tīmekļa pārlūkprogrammā mēģina izmantot ģeogrāfiskās atrašanās vietas noteikšanas API. Tīmekļa pārlūkprogrammas nodrošina API, lai tīmekļa izstrādātājiem būtu viegli piekļūt jūsu atrašanās vietai — viņi var vienkārši jautāt “kur jūs atrodaties?”, un pārlūkprogramma veiks smago darbu, lai piekļūtu GPS vai tuvējiem Wi-Fi tīkliem, lai atrastu jūsu fizisko atrašanās vietu. .

Tomēr pārlūkprogrammas arī atklāj šo informāciju, izmantojot API, jo piekļuvi tai var kontrolēt. Ja vietne vēlas piekļūt jūsu precīzai atrašanās vietai, vienīgais veids, kā to iegūt, ir atrašanās vietas API. Un, kad vietne mēģina to izmantot, jūs — lietotājs — varat atļaut vai noraidīt pieprasījumu. Aparatūras resursiem, piemēram, GPS sensoram, var piekļūt, tikai izmantojot API, tāpēc pārlūkprogramma var kontrolēt piekļuvi aparatūrai un ierobežot lietotņu darbību.

Tas pats princips tiek izmantots mūsdienu mobilajām operētājsistēmām, piemēram, iOS un Android, kur mobilajām lietojumprogrammām ir atļaujas, kuras var īstenot, kontrolējot piekļuvi API. Piemēram, ja izstrādātājs mēģina piekļūt kamerai, izmantojot kameras API, varat noraidīt atļaujas pieprasījumu, un lietotnei nebūs piekļuves jūsu ierīces kamerai.

Failu sistēmām, kas izmanto atļaujas, piemēram, Windows, Mac un Linux, ir tiesības, kuras nodrošina failu sistēmas API. Tipiskai lietojumprogrammai nav tiešas piekļuves neapstrādātam fiziskajam cietajam diskam. Tā vietā lietojumprogrammai ir jāpiekļūst failiem, izmantojot API.

API tiek izmantotas saziņai starp pakalpojumiem

API tiek izmantotas arī citu iemeslu dēļ. Piemēram, ja kādreiz esat redzējis vietnē iegultu Google Maps objektu, šī vietne izmanto Google Maps API, lai iegultu šo karti. Google nodrošina šādus API tīmekļa izstrādātājiem, kuri pēc tam var izmantot API, lai apkopotu sarežģītus objektus tieši savā vietnē. Ja šādu API nav, izstrādātājiem, iespējams, būs jāizveido savas kartes un jāiesniedz savi kartes dati, lai vietnē mitinātu nelielu interaktīvu karti.

Un, tā kā tas ir API, Google var kontrolēt piekļuvi Google Maps trešo pušu vietnēs, nodrošinot, ka viņi to izmanto konsekventi, nevis mēģina nejauši ieviest rāmi, ko, piemēram, parāda Google Maps vietne.

Tas attiecas uz daudziem dažādiem tiešsaistes pakalpojumiem. Ir API, lai pieprasītu teksta tulkojumu no Google tulkotāja vai parādītu Facebook komentārus vai Twitter tvītus vietnē.

OAuth standarts definē arī vairākas API, kas ļauj pieteikties vietnē, izmantojot citu pakalpojumu, piemēram, izmantojot Facebook, Google vai Twitter kontus, lai pieteiktos jaunā vietnē, neveidojot jaunu lietotāja kontu tikai šai vietnei. API ir standarta līgumi, kas nosaka, kā izstrādātāji mijiedarbojas ar pakalpojumu, un izvades veidu, kas izstrādātājiem jāsaņem.

Ja esat izlasījis šo rakstu, jums būs labāks priekšstats par to, kas ir API. Galu galā jums nav jāzina, kas ir API, ja vien neesat izstrādātājs. Taču, ja redzat, ka programmatūras platforma vai pakalpojums ir pievienojis jaunas API dažādām aparatūrām vai pakalpojumiem, izstrādātājiem vajadzētu būt vieglāk izmantot šādas funkcijas.

API ir ārējs interfeiss lietojumprogrammas programmēšanai, piekļuvei vietnēm, izmantojot īpašu protokolu, lai iegūtu informāciju, un vienkāršotai programmu izstrādei, kas saistītas ar iekšējiem pakalpojumiem.

Ko nozīmē API?

Vienkāršākā līdzība API lietošanai būtu kalkulatora izmantošana sarežģītu aprēķinu veikšanai. Pieņemsim, ka jums ir uzdevums, jūs varat saprast tā būtību, veidot vienādojumus un grafikus, bet jūs nezināt, kā veikt aritmētiskās darbības ar skaitļiem. Blakus jums ir kalkulators, kas var viegli veikt šīs darbības. Jūs nezināt, kas notiek datorā, un jums tas nav jāzina. Jūs sniedzat informāciju vienā formā un saņemat to citā, kas ir nepieciešama jūsu mērķiem.

Jebkura API darbojas pēc šī principa. Jums ir vienalga, kā programma saņem atbildi, kādu ceļu tajā iet pieprasījums, kā tiek veikti aprēķini. Jūs esat pārliecināts tikai par vienu – atbildē tiks sniegta standartizēta informācija par operācijas panākumiem vai tās kļūdu.

API saskarne ļauj netērēt savu laiku, naudu un pūles, iegādājoties “jaunu velosipēdu”. Jūs saņemat darba informācijas portu, kas saņem un nosūta nepieciešamo datu apjomu jūsu izstrādes mērķiem.

Plusi:

  • Ietaupiet, izstrādājot savu saskarni.
  • Nav nepieciešams saprast jautājuma nianses.
  • API izstrādā profesionāļi, un tajos tiek ņemti vērā visi iekšējo procesu faktori, par kuriem jūs, iespējams, nezināt, veidojot savu risinājumu.
  • Ļauj sazināties ar pakalpojumiem, kas ir slēgti, izmantojot citus protokolus.

Mīnusi:

  • Ja mērķa pakalpojums tiek atjaunināts, API ne vienmēr uzreiz saņem pilnu funkcionalitāti.
  • Jūs nevarat uztvert kļūdas un nezināt, kā process darbojas kāda cita kodā.
  • API ne vienmēr sniedz vislabāko rezultātu laika ziņā, jo tā ir paredzēta vispārīgu, nevis konkrētu gadījumu apstrādei.

API piemēri

API integrācija ir process, kurā lietojumprogramma tiek savienota ar ārēju datu saskarni. Darbs ar API sākas ar izmantotās dokumentācijas un protokolu izpēti un pēc tam programmas tiešu integrēšanu saskarnē. Apskatīsim populārākos pakalpojumus, kuriem ir savs API.

VKAPI

Ārējais interfeiss populārā sociālā tīkla VKontakte mijiedarbībai ar klientiem, kā arī ar pārlūkprogrammas un servera lietojumprogrammām. Ļauj pārvaldīt kopienas ziņojumus, grupu vākus, lietotāju lapas, ja jums ir atbilstošas ​​piekļuves atslēgas.

Visi pieprasījumi tiek iesniegti uz norādīto adresi https://api.vk.com/method/

Pēc slīpsvītras tiek norādīts izmantotās API metodes nosaukums un tiek pārsūtīti pieprasījuma GET parametri. Atbilde tiek sniegta arī, izmantojot HTTPS JSON formātā.

TELEGRAM BOT API

Viena no populārākajām API. To izmanto, lai kontrolētu robotprogrammatūras Telegram Messenger. Pēc robota izveides, izmantojot @botfather, un nepieciešamo piekļuves atslēgu iegūšanas, varat sākt mijiedarboties ar aizmugursistēmu.

Pieprasījumus var iesniegt uz: https://api.telegram.org/bot0000000:token/

Kur bot0000000 tiek aizstāts ar jūsu robota unikālo identifikatoru, un marķieris izsaka slepeno atslēgu.

Pieprasījumi tiek nosūtīti, izmantojot HTTPS savienojumus, metodes nosaukums tiek norādīts ar slīpsvītru uz galveno adresi. Atbilde tiek sniegta JSON formātā.

ATVĒRT LAIKA KARTES API

Bieži vien ir nepieciešams iegūt informāciju par laikapstākļiem, neizmantojot trešo pušu logrīkus un maksas lietojumprogrammas. OpenWeatherMap pakalpojums nāk palīgā ar atvērtu un bezmaksas API. Pēc identifikācijas datu reģistrēšanas un saņemšanas varat nosūtīt laikapstākļu pieprasījumus no servera skriptiem visā pasaulē. Atbildot uz pilsētas ID, resurss atgriež visdetalizētāko informāciju par pašreizējiem laikapstākļiem un sniedz prognozi tuvākajai nākotnei.

Formāts: HTTP pārraide caur api.openweathermap.org/data/2.5/weather?id=, norādot vēlamās pilsētas identifikācijas numuru. Servera atbilde: JSON.

GOOGLE MAPS API

Kas var būt jaukāks par interaktīvu pasaules karti vietnē? It īpaši, ja tas nav veidnes ieliktnis no Google Maps, bet gan jūsu personīgais populārās kartes izdevums ar personiskām marķieru grupām. Karte mijiedarbosies ar citiem vietnes skriptiem, nosūtot informāciju par klikšķiem un koordinātām.

Google Maps JavaScript API piedāvā līdzīgas iespējas. Modulis ir pilnībā skriptēts un darbojas pārlūkprogrammas pusē, tāpēc mums nav nepieciešami HTTP pieprasījumi no PHP un galveņu veidošana servera pusē, kā tas bija citās API.

Piemēram, marķiera novietošana kartē izskatīsies šādi:

var mark = new google.maps.Marker((
pozīcija: myPOS,
karte: karte,
virsraksts: "Sveiki!"
});

Kāda ir API izmantošanas nepieciešamība un priekšrocības?

Ir diezgan daudz noderīgu funkciju.

Pirmais aspekts

Varat izveidot interaktīvu lietotāja mijiedarbību ar sociālajiem tīkliem un tūlītējiem kurjeriem, izmantot trešo pušu skaitļošanas sistēmu iespējas, lai parādītu valūtas maiņas kursus, laikapstākļus un citu svarīgu informāciju.

Izmantojot API, jūs varat uzreiz savienot citus resursus un programmatūras risinājumus ar serveriem, kas parasti aizņem vairākas nedēļas. API vienkāršo dzīvi, ja nav nepieciešama unikāla ieviešana, un uzticamība un drošība ir prioritāte.

Otrais aspekts

Ja esat sarežģītas skaitļošanas jaudas, populāra pakalpojuma vai datu krātuves īpašnieks publiskai vai daļēji privātai piekļuvei, tad labs solis būtu palielināt savu API. Ko tas dos:

  • Liela klientu plūsma.
  • Vienkāršota piekļuve jūsu pakalpojumiem partneriem.
  • Pakalpojumu izmantošanas statistiskās analīzes ērtība.

Trešais aspekts

Gandrīz tāds pats kā otrais. Bet bez nepieciešamības ieviest atvērtās piekļuves API. Ja jums ir portāls un vēlaties izveidot tam mobilo aplikāciju operētājsistēmā Android/IOS, tad labākais risinājums ir sistēmas pārrakstīšana zem viena API. Visa datu struktūra ir sistematizēta. Vietne un lietojumprogramma darbosies, izmantojot vienus datu kanālus.