首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不能浏览API文档

不能浏览API文档
EN

Stack Overflow用户
提问于 2022-09-22 05:38:49
回答 1查看 147关注 0票数 0

我的项目目录结构如下:

代码语言:javascript
运行
复制
.
├── .env
│   ├── Include
│   ├── Lib
│   ├── Scripts
│   └── pyvenv.cfg
├── .vscode
│   └── launch.json
└── src
    ├── __pycache__
    └── main.py

我在main.py文件中编写了一些代码:

代码语言:javascript
运行
复制
import fastapi
from fastapi import FastAPI

app=FastAPI()

@app.get("/")
def health():
    return "ok"

@app.get("/version")
def version():
    return fastapi.__version__

然后启动项目:uvicorn main:app --port 9090 --root-path src --reload

我可以请求成功的APIs,但是当我尝试浏览swagger文档时,我将得到一个获取错误

代码语言:javascript
运行
复制
INFO:     127.0.0.1:50659 - "GET /docs HTTP/1.1" 200 OK
INFO:     127.0.0.1:50659 - "GET /src/openapi.json HTTP/1.1" 404 Not Found

我应该做一些配置来解决这个问题吗?我用python v3.10.5fastapi v0.85.0,谢谢!

EN

Stack Overflow用户

回答已采纳

发布于 2022-09-22 06:46:50

在使用反向代理的情况下使用root-path参数。如果反向代理向URL添加了路径,则代码仍然可以忽略该路径。

从医生那里:

在本例中,

具有一个带有剥离路径前缀的代理,这意味着您可以在代码中在/app上声明路径,但随后在顶层(代理)添加一个层,将FastAPI应用程序置于/api/v1这样的路径下。

在这种情况下,原始路径/app实际上将在/api/v1/app上服务。

尽管所有的代码都是在假设只有/app的情况下编写的。

它是用于指向项目结构中的文件夹的而不是。因此,删除您的uvicorn命令中的根路径参数,您应该是好的。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73809790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档