Tech 4 min læsning

API'er — og hvordan apps taler sammen

Næsten alle digitale produkter du bruger kommunikerer i baggrunden med andre systemer. Her er hvad der sker.

01 En API er en aftale

En API (Application Programming Interface) er en aftalt måde to programmer kan udveksle data og anmode om funktioner fra hinanden. Du behøver ikke vide noget om den andens interne logik — blot kende aftalen: hvilke spørgsmål du kan stille, og hvad du får tilbage.

Tænk på det som en menu på en restaurant. Du ved ikke hvad der sker i køkkenet, men du ved at hvis du bestiller en burger, får du en burger. API'en er menuen — grænsefladen der gør det muligt at samarbejde uden at kende hinandens detaljer.

API'er er rygraden i det moderne internet. Vejrudsigten på din telefon henter data fra en vejr-API. Betalingen i din app går igennem Stripes API. Login med Google bruger Googles OAuth-API.

Slå op i Techsikon: API

02 Frontend og backend

Alle webapplikationer er delt i to verdener. Frontend er det du ser: knapper, tekst, farver og animationer i browseren. Backend er maskinrummet: serverlogik, databaser og beregninger der sker usynligt.

Frontend og backend kommunikerer næsten altid via en API. Når du søger på Netflix, sender frontenden et API-kald til backenden: 'find alt med dette søgeord'. Backenden søger i databasen og sender resultatet tilbage — frontenden viser det.

De to dele kan bygges af forskellige teams, i forskellige programmeringssprog, og deployes uafhængigt — netop fordi API'en er det eneste de behøver at have til fælles.

03 Webhooks — push i stedet for pull

En API fungerer normalt ved at du spørger: 'Er der nyt?' Det kræver at du spørger igen og igen, hele tiden — det hedder polling. Det er ineffektivt, som at refreshe din mail hvert 5. sekund i stedet for at vente på en notifikation.

En webhook løser det modsatte: systemet kalder dig automatisk, i det øjeblik noget sker. Stripe sender dig en webhook, når en betaling lykkes. GitHub sender en webhook, når nogen pusher kode. Du behøver ikke at tjekke — du får besked.

Webhooks er rygraden i moderne automatisering. Zapier, Make og andre automatiseringsværktøjer bygger næsten alt på webhooks — en hændelse i ét system udløser automatisk en handling i et andet.

Slå op i Techsikon: Webhook API

04 Cache — hurtighed på bekostning af friskhed

Nogle data ændrer sig sjældent. At hente dem fra serveren ved hvert besøg er spild — det tager tid og koster serverressourcer. Cache løser det: gem en kopi af svaret tæt på brugeren, og brug den kopi i stedet for at gå til originalen hver gang.

Din browser cacher billeder og stylesheets lokalt. CDN'er (Content Delivery Networks) cacher sider på servere tæt på brugerne i hele verden. Databaser cacher hyppige forespørgsler i hukommelsen.

Prisen er friskhed: en cachet kopi afspejler ikke nødvendigvis den nyeste version. Har du nogensinde opdateret en hjemmeside og set den gamle version? Det er cachen der ikke er udløbet endnu.

Slå op i Techsikon: Cache API Database
Vigtigste pointer
Test dig selv — Tech-quiz Næste modul: Sådan gør man AI klogere