IgorDuino
@IgorDuino
Jun Python Backend

Почему FastApi Security (даже примеры) не работают на Windows?

У меня есть ПК на винде и ноут на mangaro и когда я подключал Oauth2 для своего Api начал изучение с офф документации и на Windows запускается, но не работает даже первый пример.
from fastapi import Depends, FastAPI
from fastapi.security import OAuth2PasswordBearer

app = FastAPI()

oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")


@app.get("/items/")
async def read_items(token: str = Depends(oauth2_scheme)):
    return {"token": token}

Linux:
61f290e3c2a89152449049.jpeg
Windows:
61f290ea42926362258313.jpeg
+ошибка из консоли
spoiler
INFO: 127.0.0.1:60824 - "GET /items/ HTTP/1.1" 500 Internal Server Error
ERROR: Exception in ASGI application
Traceback (most recent call last):
File "d:\programming\fastapiusers\venv\lib\site-packages\uvicorn\protocols\http\httptools_impl.py", line 376, in run_asgi
result = await app(self.scope, self.receive, self.send)
File "d:\programming\fastapiusers\venv\lib\site-packages\uvicorn\middleware\proxy_headers.py", line 75, in call
return await self.app(scope, receive, send)
File "d:\programming\fastapiusers\venv\lib\site-packages\fastapi\applications.py", line 212, in call
await super().call(scope, receive, send)
File "d:\programming\fastapiusers\venv\lib\site-packages\starlette\applications.py", line 119, in call
await self.middleware_stack(scope, receive, send)
File "d:\programming\fastapiusers\venv\lib\site-packages\starlette\middleware\errors.py", line 181, in call
File "d:\programming\fastapiusers\venv\lib\site-packages\fastapi\dependencies\utils.py", line 465, in solve_dependencies
response = response or Response(
File "d:\programming\fastapiusers\venv\lib\site-packages\starlette\responses.py", line 50, in init
self.init_headers(headers)
File "d:\programming\fastapiusers\venv\lib\site-packages\starlette\responses.py", line 77, in init_headers
and not (self.status_code < 200 or self.status_code in (204, 304))
TypeError: '<' not supported between instances of 'NoneType' and 'int'

Код запускается, но при отправке запроса на получение получение токена из хедеров вылетает 500 Error и uvicorn крашится ДАЖЕ при --reload
(отправляю через интерактивную документацию)
При этом на линукс в том же виртуальном окружении и установленных пакетах всё работает...
  • Вопрос задан
  • 370 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы