Заголовки та коди стану

Вступ до API в Python

Chris Ramakers

Engineering Manager

Будова запиту та відповіді

Приклад запиту й відповіді. Запит: GET /users/42 із заголовками. Відповідь: 200 OK з JSON-тiлом із даними користувача.

Вступ до API в Python

Стартовий рядок

Приклад трьох окремих частин повідомлення запиту чи відповіді, підсвічено стартовий рядок

  • Сервер завжди додає числовий код стану у повідомлення відповіді
Вступ до API в Python

Коди стану

Категорії кодів стану

  • 1XX: Інформаційні відповіді
  • 2XX: Успішні відповіді
  • 3XX: Переспрямування
  • 4XX: Помилки клієнта
  • 5XX: Помилки сервера

Поширені коди стану

  • 200: OK
  • 404: Not Found
  • 500: Internal Server Error
1 For a full list of all response codes you can refer to the MDN page on status-codes via https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
Вступ до API в Python

Заголовки

Приклад трьох окремих частин повідомлення запиту чи відповіді, підсвічено заголовки

key1: Value 1
key2: Value 2
Вступ до API в Python

Приклад: узгодження вмісту через заголовки

Приклад трьох окремих частин повідомлення запиту чи відповіді, підсвічено заголовки

  • Клієнт додає заголовок accept: application/json до запиту
  • Сервер відповідає заголовком content-type: application/json
Вступ до API в Python

Заголовки з requests

# Додавання заголовків до запиту
response = requests.get(
  'https://api.datacamp.com', 
  headers={'accept':'application/json'}
)
# Читання заголовків відповіді
response.headers['content-type']
'application/json'
response.headers.get('content-type')
'application/json'
Вступ до API в Python

Коди стану в requests

# Доступ до коду стану
response = requests.get('https://api.datacamp.com/users/12')

response.status_code == 200
True
# Перевірка кодів стану через requests.codes
response = requests.get('https://api.datacamp.com/this/is/the/wrong/path')

response.status_code == requests.codes.not_found
True
Вступ до API в Python

Давайте потренуємось!

Вступ до API в Python

Preparing Video For Download...