Встречается на собеседованиях • сегодня

Какие знаешь способы доставки данных с сервера клиенту

В Python есть несколько способов доставки данных с сервера клиенту:

  1. REST API (HTTP/HTTPS) - самый распространённый способ. Используется с библиотеками типа Flask, FastAPI, Django REST Framework:
python
from fastapi import FastAPI
app = FastAPI()
@app.get("/data")
def get_data():
    return {"message": "Hello World"}
  1. WebSockets - для двусторонней связи в реальном времени (библиотеки websockets, socket.io):
python
from fastapi import FastAPI, WebSocket
app = FastAPI()
@app.websocket("/ws")
async def websocket_endpoint(websocket: WebSocket):
    await websocket.accept()
    await websocket.send_text("Hello WebSocket!")
  1. Server-Sent Events (SSE) - односторонний поток данных от сервера:
python
from fastapi import FastAPI, Response
app = FastAPI()
@app.get("/stream")
async def stream_data():
    async def event_stream():
        yield "data: Message 1\n\n"
    return Response(event_stream(), media_type="text/event-stream")
  1. gRPC - высокопроизводительный RPC-фреймворк от Google (библиотека grpc)

  2. GraphQL - альтернатива REST с гибкими запросами (библиотеки graphene, ariadne)

Выбор зависит от требований: REST для простых запросов, WebSockets для чатов/игр, SSE для уведомлений, gRPC для микросервисов.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы