Redirect empty GET with request to client address

This commit is contained in:
Ruben van Staveren 2023-12-25 14:16:45 +01:00
parent f78ed7592d
commit 1fa64feefc
Signed by: ruben
GPG Key ID: 886F6BECD477A93F

View File

@ -6,7 +6,8 @@ from typing import Annotated, Optional, Union
import geoip2.database
from geoip2.errors import AddressNotFoundError
from fastapi import FastAPI, Path, Body, Response, status
from fastapi import FastAPI, Path, Body, Request, Response, status
from fastapi.responses import RedirectResponse
from pydantic import BaseModel
app = FastAPI()
@ -87,3 +88,10 @@ async def root_get(ipaddress: Annotated[Union[IPv4Address,IPv6Address],
return locations.pop()
response.status_code = status.HTTP_404_NOT_FOUND
return GeoLocation()
@app.get("/")
def root_redirect(req: Request) -> RedirectResponse:
'''
Redirect empty request using REMOTE_ADDR
'''
return RedirectResponse(url= str(req.url) + str(req.client.host))