Åben API - Open API
En åben API (ofte omtalt som en offentlig API) er en offentligt tilgængelig applikationsprogrammeringsgrænseflade, der giver udviklere programmatisk adgang til en proprietær softwareapplikation eller webtjeneste. API'er er sæt af krav, der styrer, hvordan en applikation kan kommunikere og interagere med en anden. API'er kan også give udviklere adgang til visse interne funktioner i et program, selvom det typisk ikke er tilfældet for web -API'er . I de enkleste termer tillader en API, at et stykke software kan interagere med et andet stykke software, hvad enten det er inden for en enkelt computer via en mekanisme fra operativsystemet eller via en intern eller ekstern TCP/IP-baseret eller ikke-TCP/IP-baseret netværk. I øjeblikket leveres mange API'er af organisationer til adgang med HTTP . API'er kan bruges af både udviklere i organisationen, der udgav API'et eller af alle udviklere uden for den organisation, der ønsker at registrere sig for at få adgang til grænsefladen.
Egenskaber
Åbne API'er har tre hovedkarakteristika:
- De er tilgængelige til brug af udviklere og andre brugere med relativt få begrænsninger. Begrænsninger kan omfatte nødvendigheden af at registrere sig hos den service, der leverer API.
- De bakkes typisk op af åbne data . Åbne data er frit tilgængelige for alle at bruge og genudgive, som de vil, uden begrænsninger fra ophavsret, patenter eller andre kontrolmekanismer. En åben API kan være gratis at bruge, men udgiveren kan begrænse, hvordan API -dataene kan bruges.
- De er baseret på en åben standard .
Åben API versus privat API
Privat API
En privat API er en grænseflade, der åbner dele af en organisations backend -data og applikationsfunktionalitet til brug for udviklere, der arbejder inden for (eller entreprenører, der arbejder for) den pågældende organisation. Private API'er udsættes kun for interne udviklere, derfor har API -udgiverne total kontrol over, hvad og hvordan applikationer udvikles. Private API'er giver betydelige fordele med hensyn til internt samarbejde. Brug af en privat API på tværs af en organisation giver mulighed for større delt bevidsthed om de interne datamodeller. Da udviklerne arbejder for (eller kontrakteres af) en organisation, vil kommunikationen være mere direkte, og derfor bør de være i stand til at arbejde mere sammenhængende som en gruppe. Private API'er kan reducere den udviklingstid, der er nødvendig for at manipulere og opbygge interne systemer, der maksimerer produktiviteten og skaber kundevendte applikationer, der forbedrer markedets rækkevidde og tilføjer værdi til eksisterende tilbud.
Åben API
I modsætning til en privat API er en åben API offentligt tilgængelig for alle udviklere at få adgang til. De giver udviklere, uden for en organisations arbejdsstyrke, adgang til backend -data, der derefter kan bruges til at forbedre deres egne applikationer. Åbne API'er kan øge omsætningen betydeligt, uden at virksomheden skal investere i at ansætte nye udviklere, hvilket gør dem til en meget rentabel softwareapplikation. Det er imidlertid vigtigt at huske, at åbning af back -end -information for offentligheden kan skabe en række sikkerheds- og ledelsesmæssige udfordringer. For eksempel kan publicering af åbne API'er gøre det sværere for organisationer at kontrollere den oplevelse, slutbrugere har med deres informationsaktiver. Open API -udgivere kan ikke antage, at klientapps, der er bygget på deres API'er, vil tilbyde en god brugeroplevelse. Desuden kan de ikke fuldt ud sikre, at klientapps bevarer udseendet og følelsen af deres corporate branding.
Åbn API'er i erhvervslivet
Åbne API'er kan bruges af virksomheder, der søger at udnytte det stadigt voksende fællesskab af freelancing-udviklere, der har mulighed for at skabe innovative applikationer, der tilføjer værdi til deres kerneforretning. Åbne API'er foretrækkes på forretningsområdet, da de samtidig øger produktionen af nye ideer uden at investere direkte i udviklingsindsats. Virksomheder skræddersyr ofte deres API'er til at målrette mod specifikke udviklermålgrupper, som de mener vil være mest effektive til at skabe værdifulde nye applikationer. Imidlertid kan en API reducere en applikations funktionalitet betydeligt, hvis den er overbelastet med funktioner.
Eksempelvis giver Yahoos åbne søgning -API udviklere mulighed for at integrere Yahoo -søgning i deres egne softwareapplikationer. Tilføjelsen af denne API giver søgefunktionalitet til udviklerens applikation, samtidig med at den øger søgetrafikken efter Yahoos søgemaskine og er derfor til gavn for begge parter. Med hensyn til Facebook og Twitter kan vi se, hvordan tredjeparter har beriget disse tjenester med deres egen kode. For eksempel er muligheden for at oprette en konto på et eksternt websted/en app ved hjælp af dine Facebook -legitimationsoplysninger muliggjort ved hjælp af Facebooks åbne API.
Mange store teknologivirksomheder, såsom Twitter, LinkedIn og Facebook, tillader brug af deres service af tredjeparter og konkurrenter .
Åbn API'er på internettet
Med stigningen i fremtrædende HTML5 og Web 2.0 er den moderne browseroplevelse blevet interaktiv og dynamisk, og dette er til dels blevet fremskyndet ved brug af åbne API'er. Nogle åbne API'er henter data fra databasen bag et websted, og disse kaldes Web -API'er. For eksempel giver Googles YouTube API udviklere mulighed for at integrere YouTube i deres applikationer ved at give mulighed for at søge efter videoer, hente standardfeeds og se relateret indhold.
Web -API'er bruges til at udveksle oplysninger med et websted enten ved at modtage eller sende data. Når en web -API henter data fra et websted, sender applikationen en omhyggeligt konstrueret HTTP -anmodning til den server, webstedet er gemt på. Serveren sender derefter data tilbage i et format, som din applikation forventer (hvis du anmodede om data) eller inkorporerer dine ændringer på webstedet (hvis du har sendt data).
Se også
- OpenAPI -specifikation
- Ansøgningsaktivering
- Åbent system (computing)
- Mashup (webapplikationshybrid)
- Webhook
- Web -API
eksterne links
- Åbn API Initiative (OAI) websted
- Eclipse OpenAPI (OAS) Editor og Studio
- OpenAPI Editor og Test Studio Usage Wiki