Introduktion till API:er

Introduktion till API:er i Python

Chris Ramakers

Engineering Manager

Vad är ett API?

  • Application Programming Interface
  • Uppsättning kommunikationsregler och funktioner
  • Möjliggör interaktion mellan program

Ett diagram som visar API-interaktioner mellan en e-postklient och en e-postserver för att skicka ett mejl till john@acme.com.

Introduktion till API:er i Python

Webb-API:er, klienter och servrar

  • Webb-API:er kommunicerar över internet via HTTP
  • Klienten skickar en förfrågan till en server
  • Servern returnerar ett svar till klienten

Ett diagram som visar klient–server-interaktion över internet via ett API, med märkta förfrågan- och svarsmeddelanden.

  • Förfrågan/svar-cykeln
Introduktion till API:er i Python

Typer av webb-API:er

  • SOAP
    • Fokus på strikt och formell API-design
    • Företagsapplikationer
  • REST
    • Fokus på enkelhet och skalbarhet
    • Vanligaste API-arkitekturen
  • GraphQL
    • Fokus på flexibilitet
    • Optimerat för prestanda
1 https://www.postman.com/state-of-api/api-technologies/#api-technologies
Introduktion till API:er i Python

Arbeta med API:er i Python

urllib

  • Ingår i Python
  • Kraftfullt men inte särskilt utvecklarvänligt
from urllib.request import urlopen
api = "http://api.music-catalog.com/"

with urlopen(api) as response:
  data = response.read()
  string = data.decode()
  print(string)

requests

  • Många kraftfulla inbyggda funktioner
  • Enklare att använda
import requests
api = "http://api.music-catalog.com/"

response = requests.get(api)
print(response.text)
Introduktion till API:er i Python

Nu kör vi en övning!

Introduktion till API:er i Python

Preparing Video For Download...