Web API

Screenshot of web API documentation written by NASA

Înainte de vorbi despre ce este un web API, trebuie să înțelegem ce este un API (Application Programming Interface). Conform definiției API în wikipedia[1]: în programarea computerelor, o interfață a aplicațiilor (API) este un set de definiții subrutine, protocoale și instrumente pentru construirea de software și aplicații. Web API este un API pe web care poate fi accesat prin protocolul HTTP. Este un concept și nu o tehnologie, astfel putem realiza Web API folosind diferite tehnologii precum Java, .Net, Python etc. Astazi o aplicație bazată doar pe web nu o să fie suficientă pentru a ajunge la clienții ei. Oamenii, folosesc dispozitive iPhone, mobile, tablete în viața de zi cu zi. De aceea putem spune că trecem de la web la lumea apliicațiilor. Ca concept de dezvoltare web, acesta poate fi legat de partea client a unei aplicații web (inclusiv orice cadru web utilizat). O API web partea serverului constă dintr-unul sau mai multe „puncte finale” expuse public unui sistem de mesaje cerere-răspuns definit, de obicei exprimat în JSON sau XML prin intermediul unui server web bazat pe HTTP. O interfață de programare a serverului (SAPI) nu este considerată un API web pe partea de server, cu excepția cazului în care este accesibil public de către o aplicație web la distanță. Toate browserele au un set de API-uri web încorporate pentru a ajuta la accesarea datelor.

Caracteristici Web API[modificare | modificare sursă]

Un client-side API web este o interfață programatică pentru a extinde funcționalitatea într-un web browser sau alt client HTTP. Inițial, acestea au fost cel mai frecvent sub formă de plug-in extensie de browser-uri, dar majoritatea celor mai noi vizează legături JavaScript standardizate.

Mozilla Foundation și-a creat specificația WebAPI care este concepută pentru a ajuta la înlocuirea aplicațiilor mobile native cu aplicații HTML5.[2][3]

Google și-a creat arhitectura Native Client, care este concepută pentru a ajuta la înlocuirea plug-in-urilor native nesigure cu extensii și aplicații native securizate sandbox. De asemenea, au făcut acest lucru portabil utilizând un LLVM compilator AOT modificat.

De ce sa alegeti Web API?[modificare | modificare sursă]

O API web partea serverului constă dintr-unul sau mai multe „puncte finale” expuse public unui sistem de mesaje cerere-răspuns definit, de obicei exprimat în JSON sau XML. API-ul web este expus cel mai frecvent prin intermediul unui server web bazat pe HTTP.

Mashup-uri au aplicații web-uri care combină utilizarea mai multor API-uri web pe partea de server.[4][5][6]Webhooks” are API-uri web pe server care preiau intrarea ca Identificator uniform de resurse (URI) care este proiectat pentru a fi utilizat ca un canal numit la distanță sau un tip de callback astfel încât serverul să acționeze ca client pentru a dereferenția URI-ul furnizat și pentru a declanșa un eveniment pe un alt server care se ocupă de acest eveniment, oferind astfel un tip de IPC peer-to-peer.

Care sunt cele mai comune tipuri de API-uri și ce fac acestea?[modificare | modificare sursă]

Endpoint-urile au aspecte importante ale interacțiunii cu API-urile web de pe partea de server, deoarece ele specifică unde se află resursele care pot fi accesate de software terță parte. De obicei, accesul se face printr-un URI la care sunt postate cererile HTTP și de la care se așteaptă astfel răspunsul. API-urile web pot fi publice sau private, acesta din urmă necesită un „token de acces”’.[7]

Punctele finale trebuie să fie statice, altfel nu poate fi garantată funcționarea corectă a software-ului care interacționează cu acesta. Dacă locația unei resurse se schimbă (și odată cu aceasta punctul final), atunci software-ul scris anterior se va rupe, deoarece resursa necesară nu mai poate fi găsită în același loc. Deoarece furnizorii de API-uri încă doresc să-și actualizeze API-urile web, mulți au introdus un sistem de versiuni în URI care indică un punct final.

Exemple de API-uri si unde sunt folosite[modificare | modificare sursă]

Web 2.0 API-urile web folosesc adesea interacțiuni bazate pe mașini, cum ar fi REST și SOAP. API-urile web RESTful folosesc metode HTTP pentru a accesa resurse prin parametri codificați în URL și folosesc JSON sau XML pentru a transmite date. În schimb, protocoalele SOAP sunt standardizate de W3C și impun utilizarea XML ca format de încărcare utilă, de obicei prin HTTP. Mai mult, API-urile Web bazate pe SOAP folosesc validarea XML pentru a asigura integritatea structurală a mesajelor, prin valorificarea schemelor XML furnizate cu documente WSDL. Un document WSDL definește cu acuratețe mesajele XML și legăturile de transport ale unui serviciu web.

Note[modificare | modificare sursă]

  1. ^ API
  2. ^ „WebAPI-ul Mozilla vrea să Înlocuiți aplicațiile native cu HTML5 | Webmonkey | Wired.com”. . Arhivat din originalul de la . Accesat în . 
  3. ^ /Web/API Mozilla WebAPI Wiki
  4. ^ „Ce este mash -sus? - Definiție de la WhatIs.com”. WhatIs.com (în ro -US). Accesat în . 
  5. ^ „Mashup Dashboard”. ProgrammableWeb.com. . Arhivat din original la . Accesat în . 
  6. ^ Maximilien, E. Michael; Ranabahu, Ajith; Gomadam, Karthik (sept-oct 2008). „O platformă online pentru API-uri web și mashup-uri de servicii”. IEEE Internet Computing. 12 (5): 32–43. doi:10.1109/MIC.2008.92.  Parametru necunoscut |limba= ignorat (ajutor); Verificați datele pentru: |date= (ajutor)
  7. ^ /2012/changes-coming-to-twitter-api.html „Modificări care vin în versiunea 1.1 a API-ului Twitter” Verificați valoarea |url= (ajutor). 

Lectură suplimentară[modificare | modificare sursă]

Vezi și[modificare | modificare sursă]