Чтобы получить IP-адрес пользователя в приложении Flask, использующем Gunicorn в качестве сервера, вы можете рассмотреть следующие методы:
Метод 1: доступ к удаленному адресу
from flask import request
@app.route('/')
def get_ip():
ip_address = request.remote_addr
return f"Your IP address is: {ip_address}"
Метод 2: проверка заголовка X-Forwarded-For
from flask import request
@app.route('/')
def get_ip():
ip_address = request.headers.get('X-Forwarded-For', request.remote_addr)
return f"Your IP address is: {ip_address}"
Метод 3. Использование промежуточного программного обеспечения ProxyFix (при использовании обратного прокси-сервера)
from flask import Flask
from werkzeug.middleware.proxy_fix import ProxyFix
app = Flask(__name__)
app.wsgi_app = ProxyFix(app.wsgi_app, x_for=1, x_host=1)
@app.route('/')
def get_ip():
ip_address = request.remote_addr
return f"Your IP address is: {ip_address}"
Эти методы позволяют получить IP-адрес клиента, отправляющего запрос в приложении Flask. Не забывайте проявлять осторожность при работе с IP-адресами и принимать надлежащие меры безопасности для предотвращения неправильного использования.