add user-agent header and ip fallback
This commit is contained in:
+4
-1
@@ -160,12 +160,15 @@ router = APIRouter(prefix='/api/v1', tags=['ip'])
|
||||
@router.get('/ip')
|
||||
async def get_ip(request: Request):
|
||||
forwarded = request.headers.get('X-Forwarded-For')
|
||||
user_agent = request.headers.get('User-Agent')
|
||||
|
||||
if forwarded:
|
||||
# Берем ПЕРВЫЙ IP из списка (это реальный клиент)
|
||||
client_ip = forwarded.split(',')[0].strip()
|
||||
else:
|
||||
client_ip = request.client.host
|
||||
|
||||
async with AsyncClient() as client:
|
||||
async with AsyncClient(headers={'User-Agent': user_agent}) as client:
|
||||
response = await client.get(f'https://ipinfo.io/{client_ip}')
|
||||
|
||||
html = response.text
|
||||
|
||||
Reference in New Issue
Block a user