← Назад ко всем вопросам

Чем отличаются path parameters и query parameters?

1️⃣ Как кратко ответить

Path parameters используются для указания конкретного ресурса в URL и являются частью пути, тогда как query parameters передают дополнительные данные в URL в виде ключ-значение после знака вопроса и используются для фильтрации или сортировки данных.

2️⃣ Подробное объяснение темы

Path parameters и query parameters — это два способа передачи данных в URL, которые часто используются в веб-разработке и тестировании API.

Path Parameters:

Path parameters являются частью пути URL и используются для указания конкретного ресурса. Они обычно обозначаются фигурными скобками в документации API. Например, в URL https://api.example.com/users/{userId}/orders/{orderId}, {userId} и {orderId} — это path parameters. Они заменяются фактическими значениями, чтобы получить доступ к конкретным ресурсам, например, https://api.example.com/users/123/orders/456.

  • Применение: Используются для идентификации конкретных ресурсов.
  • Пример: В URL https://api.example.com/products/42, 42 — это path parameter, указывающий на конкретный продукт.

Query Parameters:

Query parameters передаются в URL после знака вопроса ? и используются для передачи дополнительных данных в формате ключ-значение. Они могут использоваться для фильтрации, сортировки или изменения представления данных. Например, в URL https://api.example.com/products?category=books&sort=price, category=books и sort=price — это query parameters.

  • Применение: Используются для фильтрации, сортировки и передачи дополнительных данных.
  • Пример: В URL https://api.example.com/search?query=shoes&size=42, query=shoes и size=42 — это query parameters, которые могут использоваться для поиска товаров.

Пример кода:

import requests
​
# Пример использования path parameters
base_url = "https://api.example.com/users/{userId}/orders/{orderId}"
user_id = 123
order_id = 456
​
# Формирование URL с path parameters
url_with_path_params = base_url.format(userId=user_id, orderId=order_id)
​
# Отправка GET-запроса
response = requests.get(url_with_path_params)
print(response.json())  # Получение данных о конкретном заказе пользователя
​
# Пример использования query parameters
base_url = "https://api.example.com/products"
query_params = {
    "category": "books",
    "sort": "price"
}
​
# Отправка GET-запроса с query parameters
response = requests.get(base_url, params=query_params)
print(response.json())  # Получение списка книг, отсортированных по цене
  • Импорт библиотеки requests: Необходим для отправки HTTP-запросов.
  • Path Parameters: Используются для формирования URL, который указывает на конкретный ресурс (заказ пользователя).
  • Query Parameters: Используются для передачи дополнительных данных, таких как категория и сортировка, в запросе на получение списка продуктов.

Path parameters и query parameters играют важную роль в построении URL для взаимодействия с API, позволяя точно указывать ресурсы и передавать дополнительные данные для управления ответами сервера.

Тема: API и протоколы
Стадия: Tech

🔒 Подпишись на бусти автора и стань Алигатором, чтобы получить полный доступ к функционалу сайта и отслеживать свой прогресс!

Твои заметки