Какие решал задачи, связанные с API
Python
Middle
Без компании
Какие решал задачи, связанные с API
Ответы
Работал с различными API, включая REST и GraphQL. Основные задачи:
- **Интеграция с внешними сервисами** (платежи, геокодирование, соцсети):
```
import requests
response = requests.get('https://api.example.com/data', params={'key': 'value'})
if response.status_code == 200:
data = response.json()
```
- **Создание API endpoints** с Flask/FastAPI:
```
from fastapi import FastAPI
app = FastAPI()
@app.get("/items/{item_id}")
async def read_item(item_id: int):
return {"item_id": item_id}
```
- **Аутентификация** (JWT, OAuth2, API keys):
```
headers = {'Authorization': 'Bearer token'}
response = requests.get(api_url, headers=headers)
```
- **Обработка ошибок** и ретраи:
```
from tenacity import retry, stop_after_attempt
@retry(stop=stop_after_attempt(3))
def call_api():
response = requests.get(url)
response.raise_for_status()
return response
```
- **Документирование** с Swagger/OpenAPI.
- **Оптимизация** (кеширование, пагинация, асинхронные запросы).
- **Тестирование** API с pytest (моки, параметризованные тесты).
- **Парсинг** сложных ответов (вложенные структуры, XML).
Работал с rate limiting, webhooks, SSE, файловыми uploads/downloads.