Kio estas API? | Rapida Difino

Kio estas API?

intro

Per kelkaj klakoj sur labortablo aŭ aparato, oni povas aĉeti, vendi aŭ publikigi ion ajn, iam ajn. Ĝuste kiel ĝi okazas? Kiel faras informo iri de ĉi tie al tie? La nerekonita heroo estas la API.

Kio estas API?

API signifas an APLIKA PROGRAMADA INTERFACO. API esprimas programaran komponenton, ĝiajn operaciojn, enigojn, elirojn kaj subestajn tipojn. Sed kiel vi klarigas la API en simpla angla? La API funkcias kiel mesaĝisto, kiu transdonas vian peton de aplikaĵo kaj liveras la respondon al vi.

Ekzemplo 1: Kiam vi serĉas flugojn interrete. Vi interagas kun la retejo de la flugkompanio. La retejo detaligas la sidlokon kaj la koston de la flugo en tiu aparta dato kaj horo. Vi elektas vian manĝon aŭ sidlokon, pakaĵon aŭ dorlotbestajn petojn.

Sed, se vi ne uzas la rektan retejon de la flugkompanio aŭ kaj uzas interretan vojaĝagenton, kiu kombinas datumojn de multaj flugkompanioj. Por ricevi la informojn, aplikaĵo interagas kun la API de la aviadkompanio. La API estas la interfaco kiu prenas datumojn de la retejo de la vojaĝagento al la sistemo de la aviadkompanio.

 

Ĝi ankaŭ prenas la respondon de la aviadkompanio kaj liveras tuj reen. Ĉi tio faciligas la interagadon inter la vojaĝservo, kaj la flugkompaniaj 'sistemoj -por rezervi la flugon. API-oj implicas bibliotekon por rutinoj, datumstrukturoj, objektoklasoj kaj variabloj. Ekzemple, SAPO kaj REST-servoj.

 

Ekzemplo 2: Best Buy disponigas specialan prezon de Interkonsento de la Tago per sia retejo. Ĉi tiu sama datumo estas en ĝia movebla aplikaĵo. La aplikaĵo ne zorgas pri la interna preza sistemo - ĝi povas voki la Deal of the Day API kaj demandi, kio estas la speciala prezo? Best Buy respondas per la petitaj informoj en norma formato, kiun la programo montras al la finuzanto.

 

Ekzemplo 3:  APIoj por sociaj amaskomunikiloj estas decidaj. Uzantoj povas aliri enhavon kaj konservi la nombron da kontoj kaj pasvortoj, kiujn ili kontrolas malalta, por ke ili povu konservi aferojn simplaj.

  • Twitter API: Interagi kun la plej multaj Twitter-funkcioj
  • Facebook API: Por pagoj, uzantdatenoj kaj ensaluto 
  • Instagram API: Etikedu uzantojn, rigardu tendencajn fotojn

Kio pri REST & SOAP-API-oj?

SOAP kaj RESTA uzu API-konsumantan servon, konatan kiel Web API. Retservo ne dependas de ajna antaŭa scio pri informoj. SOAP estas retserva protokolo kiu estas malpeza platform-sendependa. SOAP estas XML-bazita mesaĝa protokolo. Male al SOAP-retservo, Restful-servo uzas REST-arkitekturon, konstruitan por punkto-al-punkta komunikado.

SAPO TTT-servo

Simpla Object Access Protocol (SAPO) uzas HTTP-protokolojn por permesi al aplikaĵoj komuniki. SAPO estas direkta, sennacia komunikado inter nodoj. Estas 3 specoj de SOAP-nodoj:

  1. SOAP Sendanto - kreado kaj elsendado de mesaĝo.

  2. SOAP Receiver - akiras kaj prilaboras la mesaĝon.

  3. SOAP Intermediary- ricevas kaj prilaboras titolajn blokojn.

RESTful Reta Servo

Representational State Transfer (REST) ​​rilatas al la rilato inter la kliento kaj la servilo kaj kiel la ŝtato procesas. Ripoza arkitekturo, REST-Servilo disponigas rimedan aliron al la kliento. Resto pritraktas la legadon kaj modifadon aŭ verkadon de la rimedoj. Uniforma identigilo (URI) identigas rimedojn por enhavi dokumenton. Ĉi tio kaptos la staton de la rimedo.

REST estas pli malpeza ol SOAP-arkitekturo. Ĝi analizas JSON, homlegeblan lingvon, kiu ebligas kundividon de datumoj kaj pli facile uzeblajn datumojn, anstataŭ XML uzata de SOAP-arkitekturo.

Estas pluraj principoj por desegni Restful Web Service, kiuj estas:

  • Adresebleco - Ĉiu rimedo devus havi almenaŭ unu URL.
  • Sennacieco - Restful-servo estas sennacia servo. Peto estas sendependa de iuj pasintaj petoj de la servo. HTTP estas laŭdezajne sennacia protokolo.
  • Kaŝmemorebla - Datumoj markitaj kiel kaŝmemoreblaj butikoj en la sistemo kaj reuzataj estonte. Kiel la respondo al la sama peto anstataŭ produkti la samajn rezultojn. Kaŝmemorlimoj ebligas respondajn datumojn markadon kiel kaŝmemorebla aŭ ne-kaŝmemorebla.
  • Uniforma interfaco - Permesas komunan kaj normigitan interfacon uzi por aliro. La uzo de difinita kolekto de HTTP-metodoj. Respektante ĉi tiujn konceptojn certigas, REST-efektivigo estas malpeza.

Avantaĝoj de REST

  • Uzas pli simplan formaton por mesaĝoj
  • Proponas pli fortan longtempan efikecon
  • Ĝi subtenas sennacian komunikadon
  • Uzu HTTP-normojn kaj gramatikon
  • Datumoj disponeblas kiel rimedo

Malavantaĝoj de REST

  • Malsukcesas en normoj de Reta servo kiel Sekurec-Transakcioj ktp.
  • REST-petoj ne estas skaleblaj

REST vs SOAP Komparo

Diferencoj inter SOAP kaj REST-retservoj.

 

SAPO Reteja Servo

Ripoza Reteja Servo

Postulas pezan enigaĵon kompare kun REST.

REST estas malpeza ĉar ĝi uzas URI por datumformoj.

Ŝanĝo en SOAP-servoj ofte kondukas al signifa ŝanĝo en kodo ĉe la klientflanko.

Klientflanka kodo ne estas tuŝita de ŝanĝo en servoj en REST-retprovizado.

Revena tipo estas ĉiam XML-tipo.

Provizas ĉiuflankecon rilate al la formo de la redonitaj datumoj.

XML-bazita mesaĝprotokolo

Arkitektura protokolo

Postulas SOAP-bibliotekon ĉe la fino de la kliento.

Neniu biblioteka subteno bezonata kutime uzata per HTTP.

Elportas WS-Sekureco kaj SSL.

Elportas SSL kaj HTTPS.

SAPO difinas sian propran sekurecon.

RESTful-retservoj heredas sekureciniciatojn de la subesta transporto.

Tipoj de API-Eldonaj Politikoj

Eldonpolitikoj por API estas:

 

Politikoj pri privataj liberigoj: 

La API disponeblas nur por interna kompanio.


Politikoj pri publikigo de partneroj:

La API disponeblas nur por apartaj komercaj partneroj. La kompanioj povas kontroli la kvaliton de la API pro la kontrolo pri kiu povas aliri ĝin.

 

Politikoj pri publikaj liberigoj:

La API estas por publika uzo. Havebleco de la eldonpolitikoj estas havebla al publiko. Ekzemplo: Microsoft Windows API kaj Apple's Cocoa.

konkludo

API-oj ĉeestas ĉie, ĉu vi rezervas flugon aŭ okupiĝas pri sociaj amaskomunikiloj. SOAP API baziĝas sur XML-komunikadoj, ĝi diferencas de REST API pro tio, ke ĝi ne postulas specialan agordon.

Projekti Rest-Retajn servojn devus aliĝi al certaj konceptoj, inkluzive de adresebleco, sennacieco, kaŝebleco kaj norma interfaco. API-eldonreguloj povas esti dividitaj en tri kategoriojn: privataj APIoj, partneraj APIoj, kaj publikaj APIoj.

Dankon pro legi ĉi tiun artikolon. Rigardu nian artikolon pri Gvidilo al Sekureco de API 2022.