14 lines
404 B
Python
14 lines
404 B
Python
from fastapi import Request
|
|
|
|
|
|
def get_client_ip(request: Request) -> str:
|
|
"""Extract client IP address from request"""
|
|
forwarded = request.headers.get("X-Forwarded-For")
|
|
if forwarded:
|
|
return forwarded.split(",")[0].strip()
|
|
|
|
real_ip = request.headers.get("X-Real-IP")
|
|
if real_ip:
|
|
return real_ip
|
|
|
|
return request.client.host if request.client else "127.0.0.1" |