Задать вопрос
@maryaTurova

Можно ли использовать Flask для браузерного трафика?

Server
from flask import Flask, request, Response
import requests

app = Flask(__name__)


@app.route('/', defaults={'path': ''}, methods=["GET", "POST"])
@app.route('/<path>', methods=["GET", "POST"])
def redirect_to_API_HOST(path):
    res = requests.request(
        method=request.method,
        url=request.url.replace(request.host_url, 'https://www.google.com/'),
        headers={k: v for k, v in request.headers if k.lower() != 'host'},  # exclude 'host' header
        data=request.get_data(),
        cookies=request.cookies,
        allow_redirects=False,
    )
    response = Response(res.content, res.status_code)
    return response


if __name__ == '__main__':
    app.run(host="0.0.0.0", port=5000, debug=True)

192.168.50.206 - - [27/Aug/2024 16:16:04] "CONNECT www.google.com:443 HTTP/1.1" 405 -

В браузере:
ERR_TUNNEL_CONNECTION_FAILED
  • Вопрос задан
  • 114 просмотров
Подписаться 1 Простой 7 комментариев
Пригласить эксперта
Ответы на вопрос 1
2ord
@2ord
Можно ли использовать Flask для браузерного трафика?

Перед gunicorn принято ставить какой-нибудь обратный прокси, который примет на себя запросы от быстрых и медленных клиентов.

Добавлено
Фласк не предназначен для трафика от браузеров. Похоже, стоит взять Squid.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы