Başlıklar ve durum kodları

Python ile API'lere Giriş

Chris Ramakers

Engineering Manager

İstek ve yanıt mesajının yapısı

Bir istek ve yanıt mesajı örneği. İstek: GET /users/42, başlıklarla. Yanıt: 200 OK, kullanıcı bilgisi içeren JSON gövde.

Python ile API'lere Giriş

Başlangıç satırı

İstek veya yanıt mesajının üç ayrı bölümünün örneği; başlangıç satırı vurgulanmış

  • Sunucu, yanıt mesajında her zaman sayısal bir durum kodu içerir
Python ile API'lere Giriş

Durum kodları

Durum kodu kategorileri

  • 1XX: Bilgilendirici yanıtlar
  • 2XX: Başarılı yanıtlar
  • 3XX: Yönlendirme iletileri
  • 4XX: İstemci hatası yanıtları
  • 5XX: Sunucu hatası yanıtları

Sık kullanılan durum kodları

  • 200: OK
  • 404: Not Found
  • 500: Internal Server Error
1 Tüm yanıt kodlarının tam listesi için MDN üzerindeki status-codes sayfasına bakın: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
Python ile API'lere Giriş

Başlıklar

İstek veya yanıt mesajının üç ayrı bölümünün örneği; başlıklar vurgulanmış

key1: Değer 1
key2: Değer 2
Python ile API'lere Giriş

Örnek: Başlıklarla içerik uzlaşması

İstek veya yanıt mesajının üç ayrı bölümünün örneği; başlıklar vurgulanmış

  • İstemci, isteğe accept: application/json başlığını ekler
  • Sunucu, content-type: application/json başlığıyla yanıt verir
Python ile API'lere Giriş

requests ile başlıklar

# Bir isteğe başlık ekleme
response = requests.get(
  'https://api.datacamp.com', 
  headers={'accept':'application/json'}
)
# Yanıt başlıklarını okuma
response.headers['content-type']
'application/json'
response.headers.get('content-type')
'application/json'
Python ile API'lere Giriş

requests ile durum kodları

# Durum koduna erişme
response = requests.get('https://api.datacamp.com/users/12')

response.status_code == 200
True
# requests.codes ile durum kodlarını bulma
response = requests.get('https://api.datacamp.com/this/is/the/wrong/path')

response.status_code == requests.codes.not_found
True
Python ile API'lere Giriş

Hadi pratik yapalım!

Python ile API'lere Giriş

Preparing Video For Download...