Какие знаешь основные принципы RESTful сервиса
Python
Junior
Без компании
Какие знаешь основные принципы RESTful сервиса
Ответы
REST (Representational State Transfer) — это архитектурный стиль для создания веб-сервисов. Основные принципы:
- **Клиент-серверная архитектура** — разделение клиента и сервера для независимого масштабирования.
- **Stateless** — каждый запрос содержит всю необходимую информацию, сервер не хранит состояние клиента.
- **Кэширование** — ответы могут кэшироваться для повышения производительности.
- **Единообразие интерфейса** — стандартизация взаимодействия (URI, HTTP-методы, форматы данных).
- **Слои** — клиент не знает, взаимодействует ли он напрямую с сервером или через промежуточные узлы.
- **Код по требованию (опционально)** — сервер может передавать исполняемый код клиенту (например, JavaScript).
Пример RESTful API:
```
from flask import Flask, jsonify, request
app = Flask(__name__)
tasks = [
{"id": 1, "title": "Task 1", "done": False}
]
@app.route('/tasks', methods=['GET'])
def get_tasks():
return jsonify(tasks)
@app.route('/tasks', methods=['POST'])
def add_task():
task = request.json
tasks.append(task)
return jsonify(task), 201
```
Используются стандартные HTTP-методы (`GET`, `POST`, `PUT`, `DELETE`) для операций CRUD.