Назад к вопросам
Junior — Middle
62
Что такое REST и как определить, что функция соответствует принципам RESTful API?
Ответ от нейросети
sobes.tech AI
REST (Representational State Transfer) — архитектурный стиль для построения веб-сервисов, основанный на использовании стандартных HTTP-методов и принципах взаимодействия с ресурсами.
Основные признаки RESTful API:
-
Использование HTTP-методов по назначению:
- GET — получение ресурса
- POST — создание ресурса
- PUT/PATCH — обновление ресурса
- DELETE — удаление ресурса
-
Идентификация ресурсов через URL (например,
/users/123— пользователь с ID 123). -
Отсутствие состояния на сервере (stateless): каждый запрос содержит всю необходимую информацию.
-
Использование стандартных кодов ответа HTTP.
-
Возможность представления ресурса в разных форматах (JSON, XML и др.).
Пример функции во Flask, соответствующей REST:
from flask import Flask, jsonify, request
app = Flask(__name__)
users = {"1": {"name": "Alice"}}
@app.route('/users/<user_id>', methods=['GET'])
def get_user(user_id):
user = users.get(user_id)
if user:
return jsonify(user), 200
else:
return jsonify({"error": "User not found"}), 404
Здесь функция обрабатывает GET-запрос к ресурсу пользователя, возвращая данные или ошибку, что соответствует REST-принципам.