我正在使用 fastapi 制作一個休息 api。
我只是想知道為什么每次執行服務器時都會收到以下訊息。
INFO: Started server process [97154]
INFO: Waiting for application startup.
INFO: Application startup complete.
--- Logging error ---
Traceback (most recent call last):
File "/usr/lib/python3.10/logging/__init__.py", line 1100, in emit
msg = self.format(record)
File "/usr/lib/python3.10/logging/__init__.py", line 943, in format
return fmt.format(record)
File "/usr/lib/python3.10/logging/__init__.py", line 678, in format
record.message = record.getMessage()
File "/usr/lib/python3.10/logging/__init__.py", line 368, in getMessage
msg = msg % self.args
TypeError: %d format: a real number is required, not str
Call stack:
File "mYlOcAtIoN/src/main.py", line 14, in <module>
uvicorn.run(app, host='0.0.0.0', port='8000')
File "mYlOcAtIoN/venv/lib/python3.10/site-packages/uvicorn/main.py", line 461, in run
server.run()
File "mYlOcAtIoN/venv/lib/python3.10/site-packages/uvicorn/server.py", line 67, in run
return asyncio.run(self.serve(sockets=sockets))
File "/usr/lib/python3.10/asyncio/runners.py", line 44, in run
return loop.run_until_complete(main)
File "mYlOcAtIoN/venv/lib/python3.10/site-packages/uvicorn/server.py", line 84, in serve
await self.startup(sockets=sockets)
File "mYlOcAtIoN/venv/lib/python3.10/site-packages/uvicorn/server.py", line 174, in startup
self._log_started_message(listeners)
File "mYlOcAtIoN/venv/lib/python3.10/site-packages/uvicorn/server.py", line 215, in _log_started_message
logger.info(
Message: 'Uvicorn running on %s://%s:%d (Press CTRL C to quit)'
Arguments: ('http', '0.0.0.0', '8000')
下面是main.py.
import uvicorn as uvicorn
app = FastAPI()
# Skip some settings
if __name__ == '__main__':
uvicorn.run(app, host='0.0.0.0', port='8000')
此外,我無法在 swagger 和 redocs 中得到任何東西,而我可以得到 REST 方法的結果。
請幫忙
uj5u.com熱心網友回復:
您需要將埠更改為 int 并將應用程式物件更改為 str 如下簡單代碼嘗試
if __name__ == "__main__":
uvicorn.run("main:app", host="0.0.0.0", port=8000)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/471479.html
上一篇:匿名遞回函式
