当前位置: 首页 > 后端技术 > Python

局域网环境下生成fastapi接口文件的方法

时间:2023-03-25 20:48:41 Python

fastapi自动生成的接口文档是基于SwaggerUI的,但是内部局域网环境无法访问CDN,所以无法自动生成docs接口文档。如果想在内网环境下生成docs接口文档,需要修改示例代码如下:=FastAPI(docs_url=None,redoc_url=None)root=os.path.abspath(os.path.join(os.path.basename(__file__),"../.."))print(root)app.mount("/static",StaticFiles(directory=f"{root}/static"),name="static")@app.get("/docs",include_in_schema=False)asyncdefcustom_swagger_ui_html():returnget_swagger_ui_html(openapi_url=app.openapi_url,title=app.title+"-SwaggerUI",oauth2_redirect_url=app.swagger_ui_oauth2_redirect_url,swagger_ic="/stat_js-ui-bundle.js",swagger_css_url="/static/swagger-ui.css",)@app.get(app.swagger_ui_oauth2_redirect_url,include_in_schema=False)asyncdefswagger_ui_redirect():r返回get_swagger_ui_oauth2_redirect_html()@app.get("/redoc",include_in_schema=False)asyncdefredoc_html():redoc.standalone.js",)@app.get("/users/{username}",tags=["test"],name="TESTROUTER",description="TESTROUTER",)asyncdefread_user(用户名:str):return{"message":f"Hello{username}"}if__name__=='__main__':importuvicornuvicorn.run(app,host="127.0.0.1",port=8000)注意:你需要把swagger-ui.css和swagger-ui-bundle.js放在static文件夹下,这个文件夹放在上面示例代码的上层目录下。Flutter写的app需要源码。可以私信哦~~火星字体简繁体转换哄女朋友神器号测好坏电视节目直播榜单