API-functies van de Visual Basic-taal. Wat is API in webapplicaties en waarom is het nodig?

Deze korte termijn is bekend bij iedereen die op de een of andere manier de ontwikkeling is tegengekomen. Maar niet iedereen begrijpt wat het precies betekent en waarom het nodig is. Ontwikkelaar Peter Gazarov sprak in eenvoudige bewoordingen over de API in zijn blog.

API staat voor Application Programming Interface. De meeste grote bedrijven ontwikkelen op een bepaald moment API's voor klanten of voor intern gebruik. Om te begrijpen hoe en hoe API's worden gebruikt in ontwikkeling en zaken, moet u eerst begrijpen hoe het "world wide web" werkt.

World Wide Web en externe servers

Het WWW kan worden gezien als een enorm netwerk van onderling verbonden servers die elke pagina opslaan. Een gewone laptop kan worden omgezet in een server die een hele site op het netwerk kan bedienen, en ontwikkelaars gebruiken lokale servers om sites te maken voordat ze voor een breed scala aan gebruikers worden geopend.

Wanneer ingevoerd in de adresbalk van de browser www.facebook.com een overeenkomstig verzoek wordt verzonden naar de externe Facebook-server. Zodra de browser een reactie ontvangt, interpreteert deze de code en toont de pagina.

Elke keer dat een gebruiker een pagina op het netwerk bezoekt, communiceert hij met de API van de externe server. De API is het deel van de server dat verzoeken ontvangt en antwoorden verzendt.

API als een manier om klanten te bedienen

Veel bedrijven bieden API's aan als kant-en-klare producten. Weather Underground verkoopt bijvoorbeeld toegang tot zijn API voor het verkrijgen van weergegevens.

Gebruiksscenario: op de website van een klein bedrijf staat een formulier om klanten aan te melden voor een afspraak. Het bedrijf wil Google Agenda erin insluiten om klanten de mogelijkheid te geven om automatisch een evenement aan te maken en de details van een aanstaande vergadering in te vullen.

API-toepassing: doel - de siteserver moet rechtstreeks contact opnemen met de Google-server met een verzoek om een ​​evenement met de opgegeven details te maken, een Google-antwoord te ontvangen, te verwerken en de relevante informatie naar de browser te verzenden, bijvoorbeeld een bericht waarin om bevestiging wordt gevraagd aan de gebruiker.

Als alternatief kan de browser een verzoek indienen bij de Google-server-API, waarbij de server van het bedrijf wordt omzeild.

Waarin verschilt de Google Agenda-API van andere externe server-API's op het netwerk?

Technisch gezien zit het verschil in het verzoek- en antwoordformaat. Om een ​​complete webpagina te genereren, verwacht de browser een reactie in HTML, terwijl de Google Calendar API gewoon data terugstuurt in een formaat als JSON.

Als het API-verzoek wordt gedaan door de server van de website van het bedrijf, dan is het de client (net zoals de client de browser is wanneer de gebruiker de website opent).

Dankzij de API krijgt de gebruiker de mogelijkheid om een ​​actie uit te voeren zonder de website van het bedrijf te verlaten.

De meeste moderne sites gebruiken op zijn minst een paar API's van derden. Veel taken hebben al kant-en-klare oplossingen die worden aangeboden door externe ontwikkelaars, of het nu een bibliotheek of een service is. Vaak is het makkelijker en betrouwbaarder om een ​​kant-en-klare oplossing te zoeken.

Veel ontwikkelaars distribueren een applicatie naar meerdere servers die met elkaar communiceren via een API. De servers die als hulpfunctie voor de hoofdtoepassingsserver dienen, worden microservices genoemd.

Dus wanneer een bedrijf een API aan zijn gebruikers aanbiedt, betekent dit simpelweg dat het een set aangepaste URL's heeft gemaakt die alleen gegevens retourneren als reactie.

Dergelijke verzoeken kunnen vaak via een browser worden verzonden. Aangezien gegevensoverdracht via het HTTP-protocol in tekstvorm plaatsvindt, kan de browser het antwoord altijd weergeven. Via een browser hebt u bijvoorbeeld rechtstreeks toegang tot de GitHub-API (https://api.github.com/users/petrgazarov) en zonder toegangstoken, en krijgt u het volgende antwoord in JSON-indeling:

De browser geeft het JSON-antwoord perfect weer, dat eenvoudig in de code kan worden ingevoegd. Het is voldoende om eenvoudig gegevens uit dergelijke tekst te extraheren om deze naar eigen inzicht te gebruiken.

Nog enkele API-voorbeelden

Het woord "toepassing" kan op veel verschillende manieren worden gebruikt. In de context van de API betekent dit:

  • een stukje software met een specifieke functie,
  • de server als geheel, de hele applicatie of alleen een apart deel van de applicatie.

Elk stukje software dat duidelijk van de omgeving kan worden onderscheiden, kan de letter "A" in de Engelse afkorting vervangen, en het kan ook een soort API hebben. Wanneer een ontwikkelaar bijvoorbeeld een bibliotheek van een derde partij in code injecteert, wordt deze onderdeel van de gehele applicatie. Als een op zichzelf staand stuk software zal de bibliotheek een API hebben waarmee deze kan communiceren met de rest van de applicatiecode.

Bij objectgeoriënteerd ontwerpen wordt code weergegeven als een verzameling objecten. In een toepassing kunnen honderden van dergelijke objecten met elkaar in wisselwerking staan. Elk van hen heeft zijn eigen API - een set openbaar eigenschappen en methoden voor interactie met andere objecten in de toepassing. Objecten kunnen ook hebben: privaat, interne logica die voor de omgeving verborgen is en geen API is.

Zandbak

robuuste man 26 november 2012 om 13:59

Wat is API

  • Houtkamer *

De groeten!
In dit artikel bekijken we wat een API is, waar, hoe en waarvoor deze wordt gebruikt. We zullen ook bekijken hoe de API kan worden toegepast in uw webontwikkeling en hoe het het leven van een webprogrammeur kan vereenvoudigen.

Dus laten we beginnen met de definitie. API (Application Programming Interface) is een programmeerinterface, een interface voor het maken van applicaties. In een meer begrijpelijke taal is de API een kant-en-klare code om het leven van een programmeur te vereenvoudigen. De API is zo gemaakt dat een programmeur het schrijven van een applicatie echt kan vergemakkelijken door gebruik te maken van kant-en-klare code (bijvoorbeeld functies). De bekende jQuery geschreven in JavaScript is ook een soort API. Als we dit specifieke voorbeeld beschouwen, maakt jQuery het veel gemakkelijker om code te schrijven. Wat met gewone JavaScript-middelen in 30 regels zou kunnen worden gedaan, wordt via jQuery in 5-6 geschreven. Als we naar de API in het algemeen kijken, dan kun je veel services vinden die oplossingen voor ontwikkeling vertegenwoordigen. De meest bekende vandaag is de code.google.com-service, die ongeveer vijftig verschillende API's biedt! Dit is een interface voor het maken van Android-applicaties en verschillende API's om met AJAX te werken, en verschillende applicatie-API's die u eenvoudig naar wens kunt aanpassen.

Heeft het tenslotte zin om code met uw eigen handen te schrijven? Waarom werken aan wat al is gemaakt? Heeft het zin om gratis oplossingen (en in feite gratis hulp) bij webontwikkeling op te geven? Als je op al deze vragen 'NEE' hebt geantwoord, ga er dan vanuit dat je de essentie van de API begrijpt.

Maar ik wil ook reserveren. Beginnende ontwikkelaars zouden GEEN halffabrikaten moeten gebruiken, omdat ze de echte taak in de toekomst niet aankunnen. Gebruik daarom geen halffabrikaten als u een beginnende webprogrammeur bent! Leer denken met je eigen hoofd, bouw verschillende algoritmen om de essentie van programmeren te begrijpen. Ik zeg ook, nu ik iedereen aanspreek, dat API geen kant-en-klare oplossingen zijn, het is een omgeving, een interface voor het maken van uw projecten. Je eet toch geen diepvriesburgers uit de winkel? Die bak je toch eerst? Deze analogie is heel duidelijk over de essentie van de API.

In het algemeen heb ik je verteld wat een API is, waar en hoe het wordt gebruikt, het belangrijkste waarvoor. Ik wens je een prettige studie van webprogrammering en begrip van de steeds grotere diepten ervan!

Tags: api

Dit artikel is niet onderhevig aan commentaar, aangezien de auteur nog geen volwaardig lid van de gemeenschap is. U kunt pas contact opnemen met de auteur nadat hij heeft ontvangen

Vroeg of laat komt elke programmeur zo'n concept tegen als: API... Echter, wanneer zo'n bijeenkomst plaatsvindt, weet niet iedereen wat het is, waarom het nodig is en hoe het te gebruiken. En in dit artikel ga ik deze leemte in de kennis van sommigen van jullie opvullen, en ook een voorbeeld geven uit mijn praktijk.

API (applicatie programmeerinterface:) - dit is applicatie programmeerinterface:... In eenvoudiger bewoordingen is het een set van verschillende functies, constanten, klassen, queryformaten die in andere programma's kunnen worden gebruikt.

We kunnen aannemen dat API- dit is een object waarvan we de implementatie niet kennen, maar we kunnen het gebruiken. Een computer is bijvoorbeeld een object waarvan maar heel weinig mensen de implementatie kennen, maar bijna iedereen kan het gebruiken door enkele acties uit te voeren: een video bekijken, op internet surfen, tekst afdrukken, enzovoort. Hoe het allemaal werkt - weinig mensen weten het, maar bijna iedereen kan het.

Een voorbeeld API is een Windows-API, OpenGL-API, Direct3D-API enzovoort.

Zo kwam ik bijvoorbeeld niet zo lang geleden ook direct in aanraking met API... Ik heb me aangemeld voor de mailinglijstservice " SmartReponder.ru"en startte een mailinglijst, waarop mensen zich begonnen te abonneren. De taak was als volgt: binnen 24 uur na het abonneren kan een persoon mijn betaalde videocursus met korting kopen. Aangezien alle informatie over abonnees op de server wordt opgeslagen." SmartReponder.ru", dan normale toegang (bijvoorbeeld via DB) aan deze gegevens had ik niet, maar het was noodzakelijk om het te implementeren. Gelukkig, jij" SmartReponder.ru"Hebben hun eigen API die ik gebruikte.

Ik vond in hen API het formaat van het verzoek om de abonnementsdatum als gevolg daarvan in te trekken. verder door Krul Ik heb een verzoek gestuurd en de gevraagde abonnementsdatum ontvangen voor een specifieke e-mailadressen... Verder standaard verwerking en uitvoer van het resultaat.

Per definitie van Wikipedia is een API een set kant-en-klare klassen, procedures, functies, structuren en constanten die door een toepassing (bibliotheek, service) worden geleverd voor gebruik in externe softwareproducten. Gebruikt door programmeurs om allerlei toepassingen te schrijven.

Maar aangezien veel op Wikipedia niet voor veel mensen beschikbaar is om te begrijpen, zal ik proberen uit te leggen op de vingers wat API's zijn en waarvoor ze gewoonlijk worden gebruikt, en hoe ze worden gebruikt.

API's zijn compleet anders, maar als voorbeeld koos ik een situatie waarin we een winkelketen hebben en slechts één gemeenschappelijke database. Stel je voor dat je een partnerprogramma bezit. Het affiliate programma werkt volgens het volgende principe: een persoon registreert zich in het affiliate programma en krijgt een store engine. Dan kan hij deze winkel op zijn hosting zetten en aan de slag gaan. Maar alle gegevens over deze winkel komen uit onze database, dat wil zeggen, we moeten elke partner toegang geven tot onze kostbare database. Kun je je voorstellen hoe gevaarlijk het is? We moeten immers de toegang tot de database van buitenaf openen, zodat alle partnerwinkels ermee kunnen werken. Wat gebeurt er als de toegangsgegevens in handen vallen van aanvallers?

Dit is waar de API ons zal helpen. In plaats van toegang te geven tot de database, zullen we eenvoudig een API maken waarmee partnerwinkels informatie ontvangen. Dus alleen ons API-script werkt met de database en winkels werken met dit script.

Hoe het werkt?
Een winkel stuurt bijvoorbeeld een verzoek naar onze API
http://ourapi.com/get_books?limit=20
en onze API begrijpt dat het een lijst met boeken moet retourneren, bestaande uit 20 exemplaren, omdat we de limietparameter van 20 hebben overschreden. Ons script (API) doet een verzoek aan de database, ontvangt een lijst met boeken en stuurt ze terug naar de winkel (in feite wordt het alleen weergegeven) in een specifiek formaat. Het formaat waarin de API informatie retourneert kan absoluut elk zijn, het belangrijkste is dat onze winkels het begrijpen. Het kan JSON, geserialiseerde array of XML zijn. Het maakt niet meer uit, het belangrijkste is dat je het principe begrijpt.

U definieert de reeks opdrachten die de API begrijpt. In ons geval kunnen dit bijvoorbeeld opdrachten zijn zoals het verkrijgen van een lijst met boeken, het verkrijgen van een lijst met categorieën, het verkrijgen van populaire boeken, het verkrijgen van nieuwe boeken, enz. Dus zelfs als een aanvaller de kans krijgt om toegang te krijgen tot onze API, kan hij alleen een lijst met boeken krijgen, en dit vormt geen bedreiging voor onze database.

Ik hoop dat ik met een eenvoudig voorbeeld heb kunnen uitleggen wat een API is. Als je vragen hebt, stel ze dan in de comments of op het forum en we helpen je graag bij het oplossen ervan.

Heb je een hond. Maar ze spreekt geen mensentaal. Ze is echter in staat om hem te "begrijpen" door de commando's die ze tijdens de training heeft geleerd. Als je tegen een hond zegt die het commando "sneakers!" zoiets als "Rexic, breng me, pzhalsta, mijn tapuli met konijntjes", hij zou zijn oor misschien alleen naar de bijnaam kunnen leiden, maar hij zal geen pantoffels meenemen. API is dus een reeks commando's met behulp waarvan uw hond u begrijpt en doet wat u nodig heeft. Dat is voor een theepot ook erg versimpeld, maar de essentie is duidelijk denk ik.

Een API is een taal, een gereguleerde manier voor het ene computerprogramma om met het andere te communiceren om samen een gemeenschappelijke taak uit te voeren, wanneer het ene programma verzoeken voor het andere uitvoert. Application Programming Interface (API) - Application Programming Interface.

Hier is een primitieve analogie voor dummies die uit de hand werd geboren.

Stel je 5 buitenlanders voor die verschillende talen spreken en die samen moeten werken en leven, zeg maar in Rusland. Geen van hen kent de taal van de ander, terwijl ze één team nodig hebben, per rol, om een ​​taak uit te voeren, bijvoorbeeld elkaar voeden en de smaak van eten in het Russisch bespreken. Om dit te doen, moet je boodschappen doen, eten bereiden, de tafel dekken en de afwas bespreken tijdens de maaltijd. Zodat ze elkaar begrijpen en producten in de buitenwereld kunnen vinden, leren we ze een basisset Russische woorden. Stel dat we hebben:

1. Frans

2. Spanjaard

4. Engelsman

5. Italiaans

Laten we de rollen voor het uitvoeren van subtaken als volgt verdelen:

Eten winkelen: Frans en Spaans

Koken: Spaans, Duits en Engels

Tafelopstelling: Engels en Italiaans

Maaltijd en bespreking van de smaak van Gerechten: ALL

Om hen in staat te stellen al deze taken uit te voeren, zullen we elk een reeks van die Russische woorden leren, waardoor ze, in samenwerking met elkaar en de externe omgeving, al deze taken kunnen voltooien. Zie de afbeelding hieronder.

Dus dat is het. De groep van onze buitenlandse vrienden is een groep computerprogramma's die met elkaar en met de externe omgeving moeten communiceren.

Taal en woorden die producten en elementaire handelingen aanduiden geproduceerd worden dit is de API- de normen waarmee onze buitenlandse vrienden in het Russisch met elkaar communiceren om alle toegewezen subtaken te vervullen.

API 1: Woorden voor producten en waar te koop
API 2: Woorden voor gerechten en kookmethodes
API 3: Woorden voor apparaten en bewerkingen met ze
API 4: Woorden voor smaak en evaluatie van voedsel

Het kan ingewikkelder zijn, bijvoorbeeld, laten we zeggen API 2 is Turks, API 3 is Chinees, API 4 is Hindi

Een voorbeeld voor dummies:

1. Er is een stopcontact. Daarachter gaat een enorme hoeveelheid technologie schuil. Maar om het te gebruiken, moet je een stekker hebben met een afstand tussen de staven van 3 cm en het stopcontact geeft 220v. Dit is de API van een enorm elektrisch productiesysteem.

2. En er is een strijkijzer. Hij heeft zijn eigen complexe systeem van werken. Maar om met het stopcontact te kunnen werken, voldoet het aan de API-vereisten - je hebt een stekker nodig met een afstand van 3 cm en wacht op 220 volt als reactie.

En dat is alles. De twee systemen zijn onafhankelijk, enorm en complex. Maar de API wordt gedaan om het zo gemakkelijk mogelijk te maken om met elkaar te verbinden.

API staat voor Application Programming Interface. Dit is een set functies, constanten, klassen en mogelijk andere objecten voor interactie met een bepaald onderdeel van het programma.

Ik denk dat het het meest begrijpelijk is om het met een voorbeeld te beschrijven. Stel dat iemand een rekenmachine heeft geschreven die u in uw programma wilt gebruiken. Deze rekenmachine moet op de een of andere manier worden aangepakt. Deze methoden voor interactie met de rekenmachine worden API genoemd. Ze kunnen anders zijn en zonder hun beschrijving kan er niets worden gedaan. Misschien heb je een functie om een ​​getal naar het geheugen te schrijven, een andere om een ​​actie uit te voeren en een derde om een ​​resultaat te krijgen. Of misschien heeft u één functie die twee cijfers en een bewerkingscode ertussen doorgeeft en onmiddellijk het antwoord retourneert.

Dergelijke beschrijvingen zijn gemaakt voor alles. Het besturingssysteem heeft een API, dit is een set functies waarmee een programma wordt gemaakt: een netwerkverbinding tot stand brengen, een venster tekenen, een druk op de knop verwerken. Voor sommige servers is de API een reeks functies die deze uitvoert. De browser gaat naar de wikipedia-site - deze gebruikt de API om u op verzoek een antwoord te geven.