ORDLISTE

Hvad er en API?

  Denne side blev automatisk oversat af DeepL. Switch to English

En API (Application Programming Interface) er et sæt regler, der gør det muligt for to stykker software at kommunikere med hinanden. Tænk på det som en menu: din app kan "bestille" data eller handlinger, og API'en fortæller køkkenet (en tjeneste) præcis, hvad der skal tilberedes, og hvordan det skal serveres.

API'er standardiserer, hvordan anmodninger fremsættes, og hvordan svar returneres, så forskellige systemer kan fungere sammen pålideligt, selvom de er udviklet af forskellige teams, virksomheder eller i forskellige programmeringssprog.

how-a-web-api-works

Hvad gør en API egentlig?

På et grundlæggende niveau definerer en API slutpunkter (adresser, du kan kalde), de metoder, du kan bruge (f.eks. GET til at hente data eller POST til at sende data), formatet for det, du sender (ofte JSON), og hvad du kan forvente at få tilbage (data plus en statuskode som 200 for "OK" eller 404 for "Ikke fundet"). Den forudsigelighed er hele pointen.

API vs. SDK vs. UI – hvad er forskellen?

  • API: Kontrakten om, hvad du kan anmode om, og hvordan du får svar.
  • SDK (Software Development Kit): Et værktøjssæt, der ofte omfatter en API med færdiglavet kode, eksempler og hjælpeprogrammer, der gør det nemmere at bruge API'en.
  • UI (brugergrænseflade): Det, som mennesker klikker og trykker på. API'er er til software-til-software; UI'er er til mennesker.

Hvis du vil være helt præcis, kan du bruge en API uden en SDK, men ved at bruge en SDK kan du spare tid og reducere fejl.

Er der forskellige "typer" af API'er?

Ja, flere stilarter, hver med sine fordele og ulemper:

  • REST: Den mest almindelige webstil i dag. Ressourcebaseret, bruger HTTP-metoder (GET/POST/PUT/DELETE), typisk JSON.
  • GraphQL: Klienter angiver de nøjagtige felter, de har brug for, i en enkelt anmodning – hvilket er ideelt til at reducere over- eller underhentning.
  • SOAP: Ældre XML-baseret protokol med strenge kontrakter, der stadig bruges i nogle virksomheder.
  • gRPC: Højtydende binær protokol, der er populær til mikrotjenester.
  • Webhooks: Ikke en anmodning, du fremsætter, men en tilbagekaldelse, som udbyderen sender til dig, når der sker noget (f.eks. en leveringsbekræftelse).
rest-api

Er det "det værd" at bruge en API?

Normalt ja. I stedet for at bygge alt selv, giver API'er dig mulighed for at tilslutte betalinger, kort, e-mail, søgning, analyse, AI og meget mere. Det sparer tid på udvikling, forbedrer pålideligheden (udbyderen holder deres service opdateret) og giver dit team mulighed for at fokusere på det, der gør dit produkt unikt.

Ulemperne: Du arver hastighedsbegrænsninger, priser og oppetidsafhængigheder fra din udbyder. Hvis dit produkt ikke kan fungere uden den pågældende API, skal du planlægge redundans.

Har jeg brug for en særlig "nøgle" for at kunne bruge en API?

Ofte. Mange API'er kræver godkendelse, så udbyderen ved, hvem du er, og kan tildele tilladelser og hastighedsbegrænsninger. Almindelige fremgangsmåder omfatter:

  • API-nøgler: Enkle tokens, som du sender med hver anmodning.
  • OAuth: En mere sikker, delegeret metode, der er ideel, når du har brug for adgang på vegne af en bruger.
  • Underskrevne anmodninger / JWT'er: Kryptografisk underskrevne tokens, der udløber og kan indeholde krav (hvem du er, hvad du har lov til at gøre).

Hold nøgler og tokens ude af offentlige repositorier og klient-side kode, når det er muligt.

Har jeg brug for specialværktøjer for at kalde en API?

Ikke rigtig. En webbrowser, curl eller enhver HTTP-klient fungerer for mange API'er. Udviklere bruger ofte værktøjer som Postman eller indbyggede sprogbiblioteker til at sende anmodninger, inspicere svar og gemme eksempler. Til produktionsapps bruger du dit sprogs HTTP-bibliotek eller udbyderens SDK.

Hvad bruger API'er i den virkelige verden?

Stort set alt, hvad der er moderne: mobilapps, der henter profiler, "Log ind med Google/Apple", onlinebutikker, der behandler betalinger, synkronisering af smarte hjemmeenheder, dashboards, der henter analyser, og endda din vejr-widget. Hvis software udveksler data, er der sandsynligvis en API under overfladen.

client-server-architecture

Jargon, du vil støde på (og hvad det betyder)

  • Endpoint: Den URL, du kalder (f.eks. /users/123).
  • Anmodning/svar: Det, du sender, kontra det, du får tilbage.
  • Nyttelast/brødtekst: Dataene i en anmodning eller et svar.
  • Status kode: Numerisk resultat (200 OK, 201 Oprettet, 401 Uautoriseret, 429 For mange anmodninger, 500 Serverfejl).
  • Hastighedsbegrænsning: Hvor mange opkald du kan foretage inden for et tidsvindue.
  • Versionering: Hold gammel og ny API-adfærd adskilt (f.eks. /v1/ vs. /v2/).
  • Idempotent: At udføre den samme anmodning flere gange giver det samme resultat (f.eks. GET).

RELATERET INDHOLD