Встречается на собеседованиях • сегодня
Что делать, если нет веб-фреймворков
В Python можно создавать веб-приложения и без фреймворков, используя стандартные модули:
1. **http.server** (для простых задач):
```python
from http.server import BaseHTTPRequestHandler, HTTPServer
class MyHandler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type', 'text/html')
self.end_headers()
self.wfile.write(b"
Hello World
") server = HTTPServer(('localhost', 8080), MyHandler) server.serve_forever() ``` 2. **socket** (низкоуровневый подход): ```python import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.bind(('localhost', 8080)) s.listen(1) while True: conn, addr = s.accept() data = conn.recv(1024) conn.sendall(b"HTTP/1.1 200 OK\r\n\r\nHello") conn.close() ``` 3. **wsgiref** (для WSGI-совместимых приложений): ```python from wsgiref.simple_server import make_server def app(environ, start_response): start_response('200 OK', [('Content-Type', 'text/plain')]) return [b"Hello World"] httpd = make_server('', 8000, app) httpd.serve_forever() ``` Плюсы такого подхода: - Полный контроль над процессом - Минимальные зависимости - Хорошо для обучения Минусы: - Нет удобных абстракций - Требуется больше кода - Нет встроенной безопасности
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы