Utilizarea și conectarea API-ului platformei beseller. API: ce este, cum se lucrează și se configurează tipurile de API de integrare

API(Engleză) interfața de programare a aplicației) - este o interfață de programare a aplicațiilor. API-ul unei anumite aplicații sau serviciu oferă un set de proceduri, funcții și variabile gata făcute pe care dezvoltatorii terți le pot folosi pentru a-și crea propriile aplicații și scripturi pentru a lucra cu acest serviciu.

Când lucrează prin API, aplicația trimite o solicitare către serviciu și primește un răspuns care conține datele solicitate, indiferent de limbajul de programare în care sunt create.

Proprietarii de magazine online care utilizează servicii terțe și propriile aplicații au posibilitatea de a accesa prin API la:

Informații despre comenzile plasate

Acțiuni (metode) disponibile pentru procesarea informațiilor despre comenzi:

  1. Selectarea informațiilor despre comandă după ID
  2. Selectarea informațiilor despre comenzi prin filtru
  3. Numărul de comenzi după filtru
  4. Creați o comandă
  5. Ștergerea unei comenzi
  6. Ștergerea în bloc a comenzilor
  7. Selectarea tuturor stărilor disponibile pentru comenzi
  8. Actualizare starea comenzii
  9. Adăugarea unui comentariu la o comandă

Informații despre abonat

  1. Adăugarea unui abonat
  2. Ștergerea unui abonat
  3. Eliminarea în masă a abonaților
  4. Selectarea datelor abonaților prin filtru
  5. Numărul de abonați după filtru

Informații despre utilizatorii înregistrați

Acțiuni (metode) disponibile pentru procesarea informațiilor despre abonați:

  1. Selectarea informațiilor despre utilizatorii înregistrați după ID
  2. Selectarea informațiilor despre toți utilizatorii înregistrați
  3. Selectarea informațiilor despre toate datele specificate de utilizator în timpul înregistrării:
    • Numele complet;
    • Adresa E-mail;
    • numar de contact telefon;
    • Adresa de livrare specificată: cod poștal, nume localitate, denumirea străzii, numărul casei, numărul imobilului, numărul apartamentului, etaj;

Notă! La înregistrare, este posibil ca utilizatorul să nu completeze toate câmpurile de mai sus.

Planuri de dezvoltare API

În viitorul apropiat, intenționăm să deschidem interfețe pentru a sprijini interacțiunea magazinelor cu aplicații terță parteși servicii pentru lucrul cu:

  1. secțiuni de director.
  2. Bunuri.
  3. coş.
  4. Reduceri.
  5. Metode de livrare.
  6. Metode de plata.

Pentru a testa interacțiunea cu API-ul platformei beseller, a fost creat un magazin de teste beseller-api.shop.by.

Pentru a accesa magazinul de testare, trebuie să specificați un nume de utilizator și o parolă. Le puteți obține la cerere de la managerul dvs. personal.

Înainte de a testa interacțiunile API, vă recomandăm să:

  1. plasați mai multe comenzi pe cont propriu;
  2. abonați-vă la newsletter;
  3. vezi cum sunt afișate informațiile despre comenzile plasate și despre abonați în panoul de administrare a magazinului.

Panoul de control al magazinului este disponibil la: beseller-api.shop.by/manager/ . Autentificarea și parola la intrarea în panoul de control sunt similare cu autentificarea și parola pentru accesarea magazinului.

Cum să vă conectați prin API la magazinul dvs.?

Pentru a conecta aplicația cu magazinul dvs., trebuie să specificați adresa URL pentru accesarea API-ului formularului:

http://your_site_address:8082/graphql?token=your_personal_secret_key

Puteți obține cheia secretă la cererea managerului dvs. personal.

Funcții și variabile GraphQL pentru lucrul cu API-ul platformei beseller

Cum să vă conectați la un API folosind limbajul de programare PHP

Pentru confortul de a lucra cu API-ul platformei beseller, puteți utiliza:

  1. Cursuri dezvoltate de noi sub PHP.
    1. GraphqlClient- primeste si transmite date catre server;
    2. GraphQlHelper- conține API-ul de interogare și mutație implementat;
  2. Exemple de utilizare a claselor pentru a face selecții și modificări în baza de date a unui magazin online.

Crearea mediului local

Pentru a demonstra vizual trimiterea cererilor către API și răspunsurile primite, puteți utiliza mediul local.

GraphiQL Feen este folosit ca mediu local, aceasta este o extensie de browser Google Chrome care vă permite să generați solicitări către API.

După instalarea aplicației, o pictogramă a aplicației va apărea în browserul dvs. lângă bara de adrese.

Deschideți aplicația GraphiQL Feen și accesați fila „SERVERE”, selectați metoda de trimitere POST, apoi specificați adresa URL de acces API.

Următoarea adresă ar trebui utilizată ca adresă URL de testare:

Mediul local este configurat, puteți genera cereri către API. Pentru a face acest lucru, deschideți fila „INTREBĂRI”.

Formarea unei cereri către API-ul beseller folosind GraphiQL Feen și răspunsul primit

Explicația capturii de ecran:

  1. Solicitări salvate
  2. Câmp pentru introducerea cererilor
  3. Câmp de intrare variabil
  4. Răspuns primit
  5. butonul de start

Un exemplu de solicitare de a primi o listă de comenzi finalizate pentru o anumită perioadă de timp

interogare ($first:Int, $offset:Int, $filter: OrdersFilterType)(
comenzi(primul:$primul, offset:$offset, filtru:$filtru)(
cometariu
stare(
id
Descriere
Nume
}
creeaza o data
data_actualizării
total(
sufix
valoare
}
plată(
Nume
Descriere
cost (
sufix
valoare
}
}
livrare (
Nume
Descriere
cost (
sufix
valoare
}
}
valute (
cod bancar
curs
sufix
}
datele utilizatorului(
Nume
Descriere
valoare
}
}
}

Specificarea intervalului de timp pentru preluarea datelor privind comenzile finalizate

{
"filtru" :(
"date_after": "2017-11-16T00:00:01Z",
„date_before”: „2017-11-23T00:00:01Z”
}
}

Exemplu de răspuns API

{{
"date" :(
"Comenzi": [
{
"comment": "Culpa officiis velut.",
"create_date": "2017-11-22 16:23:28",
„monede”: [
{
"bank_code": "BYN",
curs: 10000
„sufix”: „frec”
}
],
"livrare" :(
„cost”: [
{
"sufix": "frecare",
valoare: 0
}
],
"description": "Curier",
"nume": "personalizat"
},
plata: (
„cost”: [
{
"sufix": "frecare",
valoare: 0
}
],
"description": "Carti de plastic",
"nume": "personalizat"
},
stare: (
"descriere": "Nou",
„id”: 1,
"nume": "nou"
},
"total": [
{
"sufix": "frecare",
valoare: 4450
}
],
"update_date": "2017-11-22 16:23:28",
"datele utilizatorului": [
{
"description": "Adresa de e-mail",
"nume": "e-mail",
"valoare": " [email protected]"
},
{
"description": "Telefon",
"nume": "telefon",
„valoare”: „784.392.3949x69329”
},
{
"description": "Adresa",
"nume": "înregistrare",
„value”: „607 Erik Station Suite 057\nReynaberg, WY 83542-0037”
},
{
"description": "Comentariu",
"nume": "comentare",
"value": "Id nam illo optio."
},
{
"description": "Nume",
"nume": "fio",
„value”: „Jordi Mann MD”
}
]
}

De asemenea, trebuie remarcat faptul că un programator are adesea la dispoziție mai multe API-uri diferite pentru a obține același rezultat. În acest caz, fiecare API este de obicei implementat folosind API-uri ale componentelor software cu un nivel de abstractizare inferior.

De exemplu: pentru a vedea linia „Bună, lume!” tot ce trebuie să faci este să creezi un document HTML cu un titlu minim și un corp simplu care să conțină șirul dat. Ce se întâmplă când browserul deschide acest document? Programul browser va transmite numele fișierului (sau un descriptor de fișier deja deschis) bibliotecii care procesează documente HTML, care, la rândul său, folosind API-ul sistemului de operare, va citi acest fișier și va înțelege dispozitivul său, apelează operațiuni precum „clear fereastra”, „scrieți în fontul selectat Hello, world!”, în timpul acestor operațiuni, biblioteca primitivă grafică se va întoarce la biblioteca interfeței ferestrei cu solicitările corespunzătoare, această bibliotecă se va întoarce deja la API-ul sistemului de operare cu solicitări precum „ pune-mă în tamponul plăcii video asta”.

În același timp, există de fapt mai multe API-uri alternative posibile la aproape fiecare nivel. De exemplu: am putea scrie documentul sursă nu în HTML, dar în LaTeX, am putea folosi orice browser pentru afișare. Diferitele browsere folosesc în general biblioteci HTML diferite și, în plus, toate acestea pot fi (în general) compilate folosind diferite biblioteci primitive și pe diferite sisteme de operare Oh.

Principalele complexități ale sistemelor API stratificate existente sunt astfel:

  • Dificultate de portare codul programului de la un sistem API la altul (de exemplu, la schimbarea sistemului de operare);
  • Pierderea funcționalității la trecerea de la un nivel inferior la unul superior. În linii mari, fiecare „strat” al API-ului este creat pentru a facilita implementarea unui set standard de operațiuni. Dar, în același timp, devine cu adevărat dificil, sau devine fundamental imposibil, să efectuați alte operațiuni pe care le oferă un nivel API mai scăzut.

Tipuri de API de bază

  • Accesul la API este limitat la dezvoltatorii interni
  • Aplicațiile se adresează angajaților întreprinderii

Factori de afaceri:

  • Consecvența dezvoltării
  • Reducerea costurilor
  • Îmbunătățirea eficienței dezvoltării

API-uri pentru parteneri

  • API-urile sunt disponibile numai set limitat parteneri de afaceri
  • Aplicații concepute pentru consumatorii finali și utilizatorii de afaceri

Factori de afaceri:

  • Automatizarea procesului de dezvoltare
  • Dezvoltarea parteneriatelor
  • Optimizarea procesului de interactiune cu partenerii

API-uri publice

Accesul este acordat oricărui dezvoltator extern Aplicațiile sunt destinate utilizatorilor finali

Factori de afaceri:

  • Dezvoltarea de noi servicii
  • Dezvoltarea ecosistemului
  • Interacțiune multicanal

Cele mai cunoscute API-uri

API-uri ale sistemului de operare

API-uri GUI

  • Direct3D (parte a DirectX)
  • DirectDraw (parte a DirectX)

API-uri de sunet

  • DirectSound (parte a DirectX)
  • DirectMusic (parte a DirectX)

API-uri de autentificare

Principiul și utilizarea API Economy

  • Lucrarea API ar trebui să aibă o valoare măsurabilă. Nu irositi resurse construind un API pe care niciun alt dezvoltator nu o va folosi.
  • Creați un API numai dacă va avea un anumit utilizator. Trebuie să existe un partener sau un ecosistem care are nevoie de el.
  • Întreprinderea obișnuită folosește întotdeauna mai multe API-uri decât creează singură. Diviziile sale se vor ocupa de o mulțime de API-uri și depinde de CIO să gestioneze acest lucru.
  • API-urile sunt esențiale pentru Internetul lucrurilor, experiența utilizatorului final, analize și sisteme de informare. Dacă uitați aceste lucruri când creați un API, gândiți-vă de două ori.

API-urile permit organizațiilor să creeze experiențe de utilizator personalizate

Așteptările și comportamentul cumpărătorilor se schimbă

Cumpărători:

  • Solicită o abordare personalizată – în condițiile lor
  • Așteptați-vă la un serviciu integrat complet
  • Transmis celui care se potrivește cel mai bine cerințelor sale

Organizatii:

  • Interacționați cu clienții prin intermediul site-urilor web interactive create în acest scop aplicatii mobileși alte interfețe digitale prietenoase
  • Așteptați-vă la un serviciu integrat complet
  • Va merge la cine se potrivește cel mai bine cerințelor sale

API peste tot!

Cronologia evenimentelor

2019

Cercetarea TAdviserului împreună cu PJSC VTB Bank cu participarea lui Skolkovo: începe transformarea API în sectorul bancar din Rusia

Banca Centrală a invitat aproximativ 20 de bănci să participe la pilotul API deschis

Pe 21 august 2019, a devenit cunoscut faptul că Banca Rusiei a acționat în calitate de coordonator al unui proiect pilot în domeniul API-urilor deschise (interfețe de programare a aplicațiilor) pentru integrarea serviciilor bancare în cadrul Uniunii Economice Eurasiatice (UEEA). La momentul lansării materialului, Banca Centrală, împreună cu băncile centrale ale țărilor UEE, lucrează la pregătirea unui pilot pentru implementare. Bancherii care au primit o ofertă de la Banca Centrală i-au spus lui Kommersant despre acest lucru. În total, aproximativ 20 de instituții de credit au primit o scrisoare de la autoritatea de reglementare, care trebuie să răspundă cu privire la disponibilitatea lor de a participa până pe 23 august. Citeşte mai mult.

Securities Industry Ready for API

Pe 2 august 2019, a devenit cunoscut faptul că un studiu comun al SWIFT și BCG a relevat o creștere a utilizării API-urilor pe fondul dorinței companiilor de a îmbunătăți eficiența și de a oferi servicii.

Sectorul serviciilor de piață hârtii valoroase aproape de un punct de cotitură în adoptarea interfețelor de programare a aplicațiilor (API), deoarece firmele se străduiesc să îmbunătățească eficiența și să adopte modele de afaceri moderne.

Conștientizarea API în rândul managerilor de active a crescut cu 26% numai în 2018 (de la 46% la 72%), potrivit unui sondaj BCG. Interesul comercial tot mai mare generează scheme-pilot și scenarii de aplicare, în special între companiile de administrare și custozii acestora.

API-urile pot ajuta industria valorilor mobiliare să facă față numeroaselor și variate tipuri de active, schimburilor complexe de informații și presiunilor crescânde ale taxelor. Raportul evidențiază patru domenii în care API-urile pot beneficia întreaga industrie:

  • Eficiență și economii de costuri prin schimbul automat de date
  • Acces la informații în timp real, cum ar fi starea decontării și riscul intraday
  • Servicii suplimentare: date îmbogățite și analize
  • Măsuri operaționale care permit furnizorilor de servicii să compare performanța dintre jucătorii de pe piață

În industria valorilor mobiliare, adoptarea API-urilor a fost mai lentă decât în ​​alte industrii de servicii financiare, în parte din cauza lipsei unui cadru de reglementare și a lipsei de coerență în dorința jucătorilor de pe piață de a adopta API-uri. Companiile de gestionare a activelor diferă semnificativ în ceea ce privește echipamentul tehnic și deschiderea de a interacționa cu furnizorii prin API. Aproximativ 56% dintre respondenții la sondajul BCG consideră că nivelul de adoptare a API în post-tranzacționare este „experimental”, în timp ce doar 21% spun că este „ridicat” sau „mediu”.

Un API poate fi un motor puternic al inovației în post-tranzacționare, așa cum a fost în industria plăților și în alte domenii ale bancare. Interesul pentru această tehnologie este în creștere, iar primele rezultate ale experimentelor par promițătoare. Dar pentru a stimula și accelera cu adevărat adoptarea pe scară largă a API-urilor, trebuie să eliminăm incertitudinea standardelor și să îmbunătățim înțelegerea maturității tehnologiei.

Juliet Kennel, șefa departamentului piețelor de valori mobiliare și valutare din SWIFT, a menționat


Raportul oferă patru motive pentru care industria ar trebui să implementeze API-uri:

  • Interacțiune în cadrul unei infrastructuri comune. Elemente fundamentale ale soluțiilor API, cum ar fi identitatea, autentificarea, securitatea și guvernanța conexiuni de retea, ar trebui să fie negociat la nivel de industrie, nu între firme individuale.
  • Coordonarea standardelor API pentru a menține compatibilitatea. Răspândirea multor standarde poate reduce eficiența utilizării API-ului. Industria are nevoie de un singur standard API care să funcționeze pentru toți furnizorii.
  • Suport pentru API-uri de rețea, nu soluții p2p. Firmele pot beneficia de API-uri de rețea: de exemplu, un singur apel pentru a verifica starea decontării de la un broker-dealer poate fi trimis către mai mulți custozi în același timp. Soluția web va sprijini convergența atât pentru explicarea datelor, cât și pentru alte caracteristici API.
  • Îndeplinește standardele stricte de siguranță și durabilitate. Pentru o dezvoltare de succes, orice soluție API trebuie să aibă nivel inalt protecția datelor și durabilitatea.
API a devenit una dintre tehnologiile cheie în transformarea digitală a întregului sector bancar. Acum, API își face loc în industria serviciilor de valori mobiliare și devine o tehnologie de vârf în rândul companiilor care doresc să treacă la serviciul digital. În ciuda dificultăților existente pentru adoptarea API-ului în ceea ce privește interoperabilitatea și securitatea, credem că acestea vor fi depășite și așteptăm cu nerăbdare implementarea ulterioară a tehnologiei în viitorul apropiat,

a declarat Sumitra Karthikeyan, șeful Serviciilor de Valori Mobiliare la BCG


Introducerea unui API pe piața valorilor mobiliare bazată pe SWIFT poate atinge obiective cheie precum reducerea costurilor și crearea de oportunități de afaceri suplimentare pentru participanții de pe piață și, în special, pentru companiile de management și investitorii finali. Prin urmare, NSD studiază utilizarea API-urilor deschise și cooperează activ cu SWIFT în ceea ce privește standardizarea tehnologiei API și utilizarea practică a acestei tehnologii în post-tranzacționare globală, platforma bancară deschisă Tink declară că Vezi și

API este o interfață externă pentru programarea unei aplicații, accesarea site-urilor folosind un protocol specific pentru obținerea de informații și simplificarea dezvoltării programelor legate de serviciile interne.

Ce înseamnă API

Cea mai simplă analogie pentru utilizarea unui API ar fi procesul de lucru la un calculator pentru calcule complexe. Să presupunem că ai o sarcină, poți înțelege esența ei, construi ecuații și grafice, dar nu știi să faci operații aritmetice cu numere. Lângă tine se află un calculator care poate face aceste operații cu ușurință. Nu știi ce se întâmplă înăuntru calculator Da, și nu trebuie să știi. Dați informații într-o formă și le primiți în alta, necesare scopurilor dumneavoastră.

Orice API funcționează pe acest principiu. Nu-ți pasă cum primește programul răspunsul, ce cale urmează cererea în interiorul lui, cum se fac calculele. Sunteți sigur de un singur lucru - ca răspuns, vor fi emise informații standardizate despre succesul operațiunii sau despre eroarea acesteia.

Interfața API vă permite să nu vă pierdeți timpul, banii și efortul cumpărând o „bicicletă nouă”. Obțineți un port de informații de lucru care primește și trimite cantitățile necesare de date în scopul dezvoltării dvs.

Pro:

  • Economii la dezvoltarea interfeței dvs.
  • Nu este nevoie să înțelegeți nuanțele problemei.
  • API-urile sunt dezvoltate de profesioniști și iau în considerare toți factorii proceselor interne despre care este posibil să nu știți atunci când vă creați soluția.
  • Vă permite să comunicați cu servicii închise prin alte protocoale.

Minusuri:

  • În cazul actualizării serviciului țintă, API-ul nu primește întotdeauna instantaneu funcționalitatea completă.
  • Nu poți prinde erori și nu știi cum decurge procesul în codul altcuiva.
  • API-ul nu oferă întotdeauna rezultatul optimizat în timp, deoarece este conceput pentru a gestiona cazuri generale, nu anumite.

Exemple de API

Integrarea API este procesul de conectare a unei aplicații la interfata externa date. Lucrul cu API-ul începe cu studierea documentației și a protocoalelor utilizate și apoi integrarea directă a programului în interfață. Luați în considerare cele mai populare servicii care au propriul lor API.

VKAPI

Interfața externă pentru interacțiunea rețelei sociale populare VKontakte cu clienții, precum și cu aplicațiile browser și server. Vă permite să gestionați mesajele comunității, coperțile grupurilor, paginile de utilizator dacă aveți cheile de acces adecvate.

Toate cererile se fac la adresa https://api.vk.com/method/

Bara oblică este urmată de numele metodei API utilizate și sunt trecuți parametrii de solicitare GET. Răspunsul vine și prin HTTPS în format JSON.

API-ul TELEGRAM BOT

Unul dintre cele mai populare API-uri. Cu ajutorul acestuia, boții sunt controlați în messengerul Telegram. După ce ați creat un bot prin @botfather și obțineți cheile de acces necesare, puteți începe să interacționați cu backend-ul.

Solicitările se fac către https://api.telegram.org/bot0000000:token/

Unde bot0000000 este înlocuit cu identificatorul unic al botului tău, iar simbolul exprimă cheia secretă.

Solicitările sunt trimise prin conexiuni HTTPS, numele metodei este specificat printr-o bară oblică către adresa principală. Răspunsul vine în format JSON.

Deschideți API-ul HARTĂ METEO

Adesea este necesar să obțineți informații despre vreme fără a utiliza widget-uri terțe și aplicații cu plată. Serviciul OpenWeatherMap vine în ajutor cu un API deschis și gratuit. După înregistrarea și obținerea datelor de identificare, puteți trimite cereri de vreme în întreaga lume din scripturile de server. Ca răspuns la ID-ul orașului, resursa returnează maximum informatii detaliate despre vremea actuală și oferă o prognoză pentru viitorul apropiat.

Format de lucru: transfer HTTP prin api.openweathermap.org/data/2.5/weather?id= indicând numărul de identificare al orașului dorit. Răspuns server: JSON.

API-ul Google Maps

Ce poate fi mai frumos decât o hartă interactivă a lumii pe site? Mai ales dacă acesta nu este un șablon inserat din Google Maps, ci ediția dvs. personală a unei hărți populare cu grupuri personale de marcatori. Harta va interacționa cu alte scripturi de pe site, trimițând informații despre clicuri și coordonate.

API-ul JavaScript Google Maps oferă capabilități similare. Modulul este complet scriptat și funcționează pe partea de browser, așa că nu avem nevoie de solicitări HTTP de la PHP și de formarea antetelor pe partea de server, așa cum a fost cazul în alte API-uri.

De exemplu, plasarea unui marcator pe o hartă ar arăta astfel:

var mark = nou google.maps.Marker((
poziție: myPOS,
hartă:hartă,
titlu: "Bună ziua!"
});

Ce folosește API-ul și de ce este util

Există destul de multe caracteristici utile.

Primul aspect

Este posibil să stabiliți interacțiune interactivă cu utilizatorul retele socialeși mesagerie instantanee, utilizați capabilitățile terților sisteme de calcul pentru a afișa cursurile de schimb, vremea și alte informații importante.

Folosind API-ul, vă puteți conecta instantaneu la serverele altor resurse și soluții software, care într-o implementare tipică ar dura săptămâni de dezvoltare. API-ul simplifică viața acolo unde nu este necesară o implementare unică, iar fiabilitatea și securitatea sunt o prioritate.

Al doilea aspect

Dacă sunteți proprietarul unei puteri de calcul complexe, a unui serviciu popular sau a stocării de date pentru acces deschis sau semi-privat, atunci ar fi o mișcare bună să vă creșteți propriul API. Ce va oferi:

  • Flux mare de clienți.
  • Acces simplificat la serviciile dvs. pentru parteneri.
  • Comoditate analize statistice utilizarea serviciului.

Al treilea aspect

Aproape la fel ca al doilea. Dar fără a fi nevoie să implementați un API pentru acces deschis. Dacă aveți un portal și doriți să creați o aplicație mobilă Android/IOS pentru acesta, atunci rescrieți sistemul pentru un singur API - Cea mai bună decizie. Întreaga structură a datelor este sistematizată. Site-ul și aplicația vor funcționa prin canale de date unice.

Să începem cu elementele de bază: ce este un API? Abrevierea înseamnă Interfață de programare a aplicațiilor sau o interfață pentru programarea aplicațiilor. Numele pare să vorbească de la sine, dar este mai bine să luăm în considerare o explicație mai detaliată.

După cum am menționat deja, API-ul este, în primul rând, o interfață. O interfață care permite dezvoltatorilor să folosească blocuri gata făcute pentru a construi o aplicație. În cazul dezvoltării aplicațiilor mobile, o bibliotecă pentru lucrul cu o „casă inteligentă” poate acționa ca API - toate nuanțele sunt implementate în bibliotecă și vă referiți la acest API doar în codul dvs.

În cazul aplicațiilor web, API-ul poate returna date într-un alt format decât HTML standard, ceea ce îl face convenabil de utilizat atunci când scrieți propriile aplicații. API-urile publice terță parte returnează cel mai adesea date în unul dintre cele două formate: XML sau JSON. În cazul în care decideți să creați un API pentru aplicația dvs., amintiți-vă că JSON este mult mai concis și mai ușor de citit decât XML, iar serviciile care oferă acces la date în format XML îl elimină treptat pe acesta din urmă.

API în aplicații web prin exemple

O aplicație - de exemplu, Github - are propriul API pe care alți dezvoltatori îl pot folosi. Modul în care îl vor folosi depinde de posibilitățile pe care le oferă API-ul și de cât de bine funcționează imaginația dezvoltatorilor. API-ul Github permite, de exemplu, să obțineți informații despre utilizator, avatarul său, cititori, depozite și multe alte informații utile și interesante.

În mod similar, puteți trimite o solicitare în orice limbă, inclusiv în Ruby. Răspunsul la cerere va fi cam așa:

( „login” : „Freika” , „id” : 3738638, „avatar_url” : „https://avatars.githubusercontent.com/u/3738638?v=3”, "gravatar_id" : "" , "url": „https://api.github.com/users/Freika”, "html_url" : "https://github.com/Freika" , "followers_url" : „https://api.github.com/users/Freika/followers”, "following_url": „https://api.github.com/users/Freika/following(/other_user)”, "gists_url" : „https://api.github.com/users/Freika/gists(/gist_id)”, "starred_url" : „https://api.github.com/users/Freika/starred(/owner)(/repo)”, "subscriptions_url" : „https://api.github.com/users/Freika/subscriptions”, "organizations_url" : „https://api.github.com/users/Freika/orgs”, "repos_url": „https://api.github.com/users/Freika/repos”, "events_url" : „https://api.github.com/users/Freika/events(/privacy)”, "received_events_url" : „https://api.github.com/users/Freika/received_events”, "type" : "Utilizator" , "site_admin" : false , "name" : "Evgeniy" , "company" : "" , "blog" : "http://frey.su/" , "location" : " Barnaul" , "email" : "" , "hireable" : true , "bio" : null, "public_repos" : 39, "public_gists" : 13, "followers" : 15, "following" : 21, "created_at" : "2013-03-01T13:48:52Z" , "updated_at" : "2014-12-15T13:55:03Z" )

După cum puteți vedea din blocul de mai sus, răspunsul conține o autentificare, un avatar, un link către profilul de pe site și în API, starea utilizatorului, numărul de depozite publice și alte informații utile și interesante.

Un singur API nu este suficient

Crearea unui API cu drepturi depline pentru aplicația dvs. este doar jumătate din luptă. Cum ai de gând să accesezi API-ul? Cum îl vor accesa utilizatorii?

Primul lucru care îmi vine în minte este seria obișnuită de solicitări HTTP de primit informatie necesarași acesta este răspunsul greșit. Cel mai evident mod în acest caz nu este cel mai convenabil și simplu. Ar fi mult mai rezonabil să se creeze o bibliotecă specială pentru lucrul cu interfața, care să descrie toate modalitățile necesare de a primi și trimite informații folosind API-ul.

Încă o dată, vom folosi Github pentru a da un exemplu: pentru a lucra cu API-ul acestui serviciu excelent (și interfața sa oferă posibilități extinse), au fost create mai multe biblioteci în diferite limbi, de exemplu, bijuteria Octokit. În documentația pentru astfel de biblioteci (și bijuteria dată ca exemplu), orice dezvoltator interesat va putea găsi toate modalitățile necesare pentru a primi informații de la Github și a le trimite înapoi prin API-ul serviciului.

Astfel, dacă vă creați propriul API, gândiți-vă să creați biblioteci pentru a lucra cu el și în cele mai comune limbi. Și fiți pregătiți că, la un anumit nivel de cerere pentru aplicația dvs., altcineva își poate crea propria bibliotecă pentru a lucra cu API-ul dvs. Este în regulă.

Link-uri utile

În articolele următoare, vom vorbi despre cum să creați corect un API, să asigurați securitatea acestuia și să restricționați accesul la unele informații.

Probabil ați văzut termenul „API”. Sistemul de operare, browserul web și actualizările aplicațiilor anunță adesea noi API-uri pentru dezvoltatori. Dar ce este un API?

Interfața de programare a aplicației

Termenul API este un acronim și înseamnă „Application Programming Interface”.

API este ca un meniu într-un restaurant. Meniul contine o lista de preparate pe care le puteti comanda, precum si o descriere a fiecarui fel de mancare. Când specificați ce articole de meniu doriți, bucătăria restaurantului face treaba și vă oferă preparate gata. Nu știi exact cum pregătește restaurantul această mâncare și nici nu e nevoie.

De asemenea, API-ul oferă multe operațiuni pe care dezvoltatorii le pot folosi, precum și o descriere a ceea ce fac. Dezvoltatorul nu trebuie să știe cum, de exemplu, este creat un sistem de operare și este afișată caseta de dialog Salvare ca. Trebuie doar să știe că este disponibil pentru utilizare în aplicație.

Nu este o metaforă perfectă, deoarece dezvoltatorii ar putea fi nevoiți să furnizeze propriile lor date API pentru a obține rezultate, așa că poate că este mai degrabă un restaurant elegant, unde puteți furniza unele dintre propriile ingrediente cu care va funcționa bucătăria.

API-urile le permit dezvoltatorilor să economisească timp profitând de injecția platformei pentru a efectua o muncă importantă. Acest lucru ajută la reducerea cantității de cod pe care îl dezvoltați și, de asemenea, ajută la crearea coerenței între aplicațiile de pe aceeași platformă. API-urile pot controla accesul la resursele hardware și software.

API-urile ușurează viața dezvoltatorilor

Să presupunem că doriți să dezvoltați o aplicație pentru iPhone. Sistemul de operare Apple iOS oferă un număr mare de API-uri, la fel ca orice alt sistem de operare, pentru a vă facilita acest lucru.

De exemplu, dacă doriți să încorporați un browser web pentru a afișa una sau mai multe pagini web, nu trebuie să vă codificați propriul browser web de la zero doar pentru aplicația dvs. Tu
Puteți utiliza API-ul WKWebView pentru a încorpora un browser web WebKit (Safari) în aplicația dvs.

Dacă doriți să faceți fotografii sau videoclipuri de la camere iPhone, Nu trebuie să scrieți propria interfață pentru cameră. Puteți folosi Camera API pentru a încorpora camera iPhone în aplicația dvs. Dacă API-ul nu ar exista, dezvoltatorii de aplicații ar trebui să-și scrie propriul software pentru camere și să interpreteze intrările hardware camere de luat vederi. Dar dezvoltatorii sistemului de operare Apple au făcut toată munca grea, astfel încât dezvoltatorii pot folosi pur și simplu API-ul camerei pentru a încorpora camera și apoi continuă să scrie aplicația. Și atunci când Apple îmbunătățește API-ul camerei, toate aplicațiile care îl folosesc vor profita automat de această îmbunătățire.

Acest lucru este valabil pentru toate platformele. De exemplu, doriți să creați o casetă de dialog în Windows? Există un API pentru asta. Doriți să acceptați autentificarea cu amprentă pe Android? Există un API pentru aceasta, așa că nu trebuie să testați fiecare senzor de amprentă de la fiecare producător de Android. Dezvoltatorii nu trebuie să reinventeze roata din nou și din nou.

API-urile controlează accesul la resurse

API-urile sunt, de asemenea, folosite pentru a controla accesul la dispozitivele hardware și la caracteristicile software pe care o aplicație ar putea să nu aibă permisiunea de a le utiliza. Acesta este motivul pentru care API-urile joacă adesea un rol important în securitate.

De exemplu, dacă ați vizitat vreodată un site web și ați văzut un mesaj în browser că site-ul web vă solicită locația exactă, site-ul respectiv încearcă să folosească API-ul de localizare geografică în browserul dvs. web. Browserele web oferă API-uri care facilitează accesul dezvoltatorilor web la locația dvs. - aceștia vă pot întreba pur și simplu „unde sunteți?”, iar browserul face munca grea de a accesa GPS-ul sau în apropiere. Rețele WiFi pentru a vă găsi locația fizică.

Cu toate acestea, browserele furnizează aceste informații și prin intermediul unui API, deoarece accesul la acestea poate fi controlat. Când un site web dorește să vă acceseze locația exactă, singura modalitate de a o obține este prin intermediul API-ului Locație. Și, atunci când un site web încearcă să-l folosească, dvs. - utilizatorul - puteți alege să permiteți sau să respingeți solicitarea. Accesul la resurse hardware, cum ar fi un senzor GPS, este posibil doar printr-un API, astfel încât browserul poate controla accesul la hardware și poate limita aplicațiile.

Același principiu este folosit pentru sistemele de operare mobile moderne, cum ar fi iOS și Android, unde aplicațiile mobile au permisiuni care pot fi implementate prin controlul accesului API. De exemplu, dacă un dezvoltator încearcă să acceseze camera prin API-ul camerei, puteți refuza solicitarea de permisiune, iar aplicația nu va putea accesa camera dispozitivului dvs.

Sistemele de fișiere care folosesc permisiuni, așa cum fac pe Windows, Mac și Linux, au aceleași permisiuni ca cele aplicate de API. Sistemul de fișiere. O aplicație tipică nu are acces direct la un hard disk fizic brut. În schimb, aplicația trebuie să acceseze fișierele printr-un API.

API-urile sunt folosite pentru a comunica între servicii

API-urile sunt folosite și din alte motive. De exemplu, dacă ați văzut vreodată obiect Google Hărți încorporate pe un site web, acest site utilizează API-ul Google Maps pentru a încorpora această hartă. Google oferă API-uri ca acestea pentru dezvoltatorii web, care pot folosi apoi API-urile pentru a asambla obiecte complexe chiar pe site-ul lor. Dacă astfel de API-uri nu există, dezvoltatorii pot fi nevoiți să-și creeze propriile hărți și să furnizeze propriile lor date de hărți pentru a găzdui o mică hartă interactivă pe un site web.

Și pentru că este un API, Google poate controla accesul la Hărți Google pe site-urile terțelor părți, asigurându-se că o folosesc într-o manieră consecventă și că nu încearcă să încorporeze aleatoriu un cadru care arată site-ul Google Maps, de exemplu.

Acest lucru se aplică multor servicii online diferite. Există API-uri pentru a solicita o traducere a textului din Google Translate sau pentru a afișa comentarii Facebook sau tweet-uri de pe Twitter pe un site web.

Standardul OAuth definește, de asemenea, o serie de API-uri care vă permit să vă conectați la un site printr-un alt serviciu, cum ar fi utilizarea acreditărilor dvs. de conectare. postări pe Facebook, Google sau Twitter pentru a introduce un site web nou fără a crea unul nou cont utilizator numai pentru acest site. API-urile sunt contracte standard care definesc modul în care dezvoltatorii interacționează cu un serviciu și tipul de produs pe care dezvoltatorii ar trebui să se aștepte să îl primească.

Dacă ați citit acest articol, atunci veți înțelege mai bine ce este un API. În cele din urmă, nu trebuie să știți ce este un API decât dacă sunteți dezvoltator. Dar dacă vezi asta platforma software sau serviciul a adăugat noi API-uri pentru diferite hardware sau servicii, ar trebui să fie mai ușor pentru dezvoltatori să folosească astfel de funcții.



Se încarcă...
Top