aboutsummaryrefslogtreecommitdiff
path: root/jb/views/utils.py
blob: a13326318a231fc836fab43e74bbab11d1903616 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
from fastapi import Request


def get_client_ip(request: Request) -> str:
    forwarded = request.headers.get("X-Forwarded-For")
    if forwarded:
        return forwarded.split(",", 1)[0].strip()

    if request.client is None:
        raise ValueError("Client IP is unavailable")

    return request.client.host