Атрибут path
Атрибут path применяется к объекту запроса Request
и возвращает строку с путём URL, по которому пришёл запрос.
Значение не включает query-параметры (всё, что идёт после ?)
и не включает схему, хост и порт.
Атрибут доступен как свойство и не требует вызова.
Синтаксис
request.path
Пример
Давайте получим путь URL в обработчике корневого маршрута:
from fastapi import FastAPI, Request
app = FastAPI()
@app.get('/')
def index(request: Request):
return {'path': request.path}
Результат выполнения кода для адреса /:
{"path": "/"}
Пример
Давайте проверим, что query-параметры не попадают в значение атрибута:
from fastapi import FastAPI, Request
app = FastAPI()
@app.get('/user')
def user(request: Request):
return {'path': request.path}
Результат выполнения кода для адреса /user?name=abcde:
{"path": "/user"}
Пример
Давайте получим путь URL с динамическим параметром маршрута:
<+python+>
from fastapi import FastAPI, Request
app = FastAPI()
@app.get('/user/{name}')
def user(name: str, request: Request):
return {'path': request.path, 'name': name}
<-python+>
Результат выполнения кода для адреса /user/abcde:
{"path": "/user/abcde", "name": "abcde"}
Смотрите также
-
класс
Request,
который представляет объект входящего запроса -
атрибут
url,
который возвращает полный URL запроса -
атрибут
base_url,
который возвращает базовый URL без пути -
атрибут
path_params,
который возвращает словарь параметров пути