Ano ang isang API? | Mabilis na Kahulugan

Ano ang isang API?

Intro

Sa ilang pag-click sa isang desktop o device, maaaring bumili, magbenta o mag-publish ng kahit ano, anumang oras. Eksakto paano ito nangyayari? Paano impormasyon pumunta mula dito hanggang doon? Ang hindi nakikilalang bayani ay ang API.

Ano ang isang API?

Ang API ay nangangahulugang isang APPLICATION PROGRAMMING INTERFACE. Ang isang API ay nagpapahayag ng isang bahagi ng software, ang mga pagpapatakbo nito, mga input, mga output, at mga pinagbabatayan na uri. Ngunit paano mo ipapaliwanag ang API sa simpleng Ingles? Ang API ay gumagana bilang isang messenger na naglilipat ng iyong kahilingan mula sa isang application at naghahatid ng tugon pabalik sa iyo.

Ang halimbawa 1: Kapag naghahanap ka ng mga flight online. Nakikipag-ugnayan ka sa website ng airline. Ang website ay nagdedetalye ng upuan at ang halaga ng flight sa partikular na petsa at oras. Pipiliin mo ang iyong pagkain o upuan, bagahe, o mga kahilingan sa alagang hayop.

Ngunit, kung hindi mo ginagamit ang direktang website ng airline o at gumagamit ka ng online na ahente sa paglalakbay na pinagsasama-sama ang data mula sa maraming airline. Upang makuha ang impormasyon, nakikipag-ugnayan ang isang application sa API ng airline. Ang API ay ang interface na kumukuha ng data mula sa website ng travel agent patungo sa system ng airline.

 

Ito rin ay tumatagal ng tugon ng airline at naghahatid kaagad pabalik. Pinapadali nito ang pakikipag-ugnayan sa pagitan ng serbisyo sa paglalakbay, at ng mga sistema ng airline -upang i-book ang flight. Ang API ay nangangailangan ng library para sa mga routine, istruktura ng data, object class, at variable. Halimbawa, ang mga serbisyo ng SOAP at REST.

 

Ang halimbawa 2: Ginagawa ng Best Buy na available ang isang Deal of the Day na espesyal na pagpepresyo sa pamamagitan ng website nito. Ang parehong data na ito ay nasa mobile application nito. Ang app ay hindi nag-aalala tungkol sa panloob na sistema ng pagpepresyo - maaari itong tumawag sa Deal of the Day API at magtanong, ano ang espesyal na pagpepresyo? Tumutugon ang Best Buy gamit ang hiniling na impormasyon sa karaniwang format na ipinapakita ng app sa end-user.

 

Halimbawa3:  Ang mga API para sa social media ay mahalaga. Maaaring ma-access ng mga user ang nilalaman at mapanatiling mababa ang bilang ng mga account at password na sinusubaybayan nila, upang mapanatiling simple ang mga bagay.

  • Twitter API: Makipag-ugnayan sa karamihan ng mga function ng Twitter
  • Facebook API: Para sa mga pagbabayad, data ng user, at pag-login 
  • Instagram API: I-tag ang mga user, tingnan ang mga trending na larawan

Kumusta naman ang REST & SOAP API's?

SOAP at REST gumamit ng serbisyong gumagamit ng API, na kilala bilang Web API. Ang serbisyo sa web ay hindi nakadepende sa anumang naunang kaalaman sa impormasyon. Ang SOAP ay isang web service protocol na magaan na platform-independent. Ang SOAP ay isang XML-based na messaging protocol. Hindi tulad ng SOAP web service, ang Restful service ay gumagamit ng REST architecture, na binuo para sa point-to-point na komunikasyon.

SOAP Web service

Ang Simple Object Access Protocol (SOAP) ay gumagamit ng mga HTTP protocol upang payagan ang mga application na makipag-usap. Ang SOAP ay isang direksyon, walang estado na komunikasyon sa pagitan ng mga node. Mayroong 3 uri ng SOAP node:

  1. SOAP Sender – paggawa at pagpapadala ng mensahe.

  2. SOAP Receiver – kinukuha at pinoproseso ang mensahe.

  3. SOAP Intermediary- tumatanggap at nagpoproseso ng mga bloke ng header.

Matahimik na Serbisyo sa Web

Ang Representational State Transfer (REST) ​​ay nauugnay sa kaugnayan sa pagitan ng kliyente at ng server at kung paano nagpoproseso ang estado. Rest architecture, ang isang REST Server ay nagbibigay ng resource access sa client. Si Rest ang humahawak sa pagbabasa at pagbabago o pagsulat ng mga mapagkukunan. Tinutukoy ng Uniform Identifier (URI) ang mga mapagkukunan upang maglaman ng isang dokumento. Makukuha nito ang estado ng mapagkukunan.

Ang REST ay mas magaan kaysa sa SOAP architecture. Pina-parse nito ang JSON, isang wikang nababasa ng tao na nagbibigay-daan sa pagbabahagi ng data at mas madaling gamitin ang data, sa halip na XML na ginagamit ng SOAP architecture.

Mayroong ilang mga prinsipyo para sa pagdidisenyo ng Restful Web Service, na:

  • Addressability - Ang bawat mapagkukunan ay dapat magkaroon ng hindi bababa sa isang URL.
  • Statelessness – Ang isang Restful service ay isang stateless na serbisyo. Ang isang kahilingan ay hiwalay sa anumang mga nakaraang kahilingan ng serbisyo. Ang HTTP ay sa pamamagitan ng disenyo ng isang stateless protocol.
  • Cacheable – Minarkahan ang data bilang mga naka-cache na tindahan sa system at muling magagamit sa hinaharap. Bilang tugon sa parehong kahilingan sa halip na gumawa ng parehong mga resulta. Ang mga hadlang sa cache ay nagbibigay-daan sa pagmamarka ng data ng tugon bilang cacheable o hindi na-cacheable.
  • Uniform interface – Nagbibigay-daan sa isang karaniwan at standardized na interface na gamitin para sa pag-access. Ang paggamit ng isang tinukoy na koleksyon ng mga pamamaraan ng HTTP. Tinitiyak ng pagsunod sa mga konseptong ito, magaan ang pagpapatupad ng REST.

Mga kalamangan ng REST

  • Gumagamit ng mas simpleng format para sa mga mensahe
  • Nag-aalok ng mas malakas na pangmatagalang kahusayan
  • Sinusuportahan nito ang walang estado na komunikasyon
  • Gumamit ng mga pamantayan ng HTTP at gramatika
  • Ang data ay magagamit bilang isang mapagkukunan

Mga disadvantages ng REST

  • Nabigo sa mga pamantayan ng serbisyo sa Web tulad ng Mga Transaksyon sa Seguridad atbp.
  • Ang mga kahilingan sa REST ay hindi nasusukat

REST vs SOAP Paghahambing

Mga pagkakaiba sa pagitan ng SOAP at REST web services.

 

SOAP Web Service

Rest Web Service

Nangangailangan ng mabigat na input payload kumpara sa REST.

Ang REST ay magaan dahil gumagamit ito ng URI para sa mga form ng data.

Ang pagbabago sa mga serbisyo ng SOAP ay madalas na humahantong sa isang makabuluhang pagbabago sa code sa panig ng kliyente.

Ang Client-side code ay hindi apektado ng pagbabago sa mga serbisyo sa REST web provisioning.

Ang uri ng pagbabalik ay palaging uri ng XML.

Nagbibigay ng versatility na may paggalang sa anyo ng ibinalik na data.

Isang XML-based na message protocol

Isang protocol ng arkitektura

Nangangailangan ng SOAP library sa dulo ng kliyente.

Walang kinakailangang suporta sa library na karaniwang ginagamit sa HTTP.

Sinusuportahan ang WS-Security at SSL.

Sinusuportahan ang SSL at HTTPS.

Tinutukoy ng SOAP ang sarili nitong seguridad.

Ang mga nakakarelaks na serbisyo sa web ay nagmamana ng mga hakbang sa seguridad mula sa pinagbabatayan na transportasyon.

Mga Uri ng Mga Patakaran sa Pagpapalabas ng API

Ang mga patakaran sa paglabas para sa API ay:

 

Mga patakaran sa pribadong pagpapalabas: 

Ang API ay magagamit lamang para sa panloob na paggamit ng kumpanya.


Mga patakaran sa pagpapalabas ng partner:

Available lang ang API para sa mga partikular na kasosyo sa negosyo. Maaaring kontrolin ng mga kumpanya ang kalidad ng API dahil sa kontrol sa kung sino ang makaka-access nito.

 

Mga patakaran sa pampublikong pagpapalabas:

Ang API ay para sa pampublikong paggamit. Available sa publiko ang availability ng mga patakaran sa pagpapalabas. Halimbawa: Microsoft Windows API at Apple's Cocoa.

Konklusyon

Ang mga API ay naroroon sa lahat ng dako, nagbu-book ka man ng flight o nakikipag-ugnayan sa mga application ng social media. Ang SOAP API ay batay sa mga komunikasyong XML, naiiba ito sa REST API dahil hindi ito nangangailangan ng anumang espesyal na pagsasaayos.

Ang pagdidisenyo ng mga serbisyo sa Rest Web ay dapat sumunod sa ilang mga konsepto, kabilang ang addressability, statelessness, cacheability, at isang karaniwang interface. Maaaring hatiin ang mga panuntunan sa paglabas ng API sa tatlong kategorya: mga pribadong API, mga partner na API, at mga pampublikong API.

Salamat sa pagbabasa ng artikulong ito. Tingnan ang aming artikulo sa isang Gabay sa Security ng API 2022.