当前位置: 首页 > news >正文

新郑网站开发站长权重

新郑网站开发,站长权重,做网站设计多少钱,旅游分销网站建设方案环境:openEuler、python 3.11.6、fastapi 0.115.2 背景:居家办公,默认搭建的fastapi的docs接口为空白 时间:20241016 说明:网上很多教程的缺点是复杂(但是能够了解的更清楚),使用…

环境:openEuler、python 3.11.6、fastapi 0.115.2

背景:居家办公,默认搭建的fastapi的docs接口为空白

时间:20241016

说明:网上很多教程的缺点是复杂(但是能够了解的更清楚),使用官方文档解决很便利

官方文档地址:Custom Docs UI Static Assets

 1、搭建环境

 安装相应的python包

pip install fastapi uvicorn

创建main文件:

# main.py
from fastapi import FastAPI
app = FastAPI()@app.get("/") # 根路由
async def root():return "I want to change the world"if __name__ == "__main__":import uvicornuvicorn.run(app, host="0.0.0.0", port=8000)# 启动命令:uvicorn main:app --reload --host 0.0.0.0 --port 8000

运行测试:

说明启动成功

(venv) [jack@Laptop-L14-gen4 fastTest]$ uvicorn main:app --reload --host 0.0.0.0 --port 8000
INFO:     Will watch for changes in these directories: ['/home/jack/fastTest']
INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
INFO:     Started reloader process [6119] using StatReload
INFO:     Started server process [6121]
INFO:     Waiting for application startup.
INFO:     Application startup complete.

 浏览器查看

 至此,说明基本环境搭建完毕

2、问题发现

默认访问 http://172.26.20.199:8000/docs 应该如下:

可问题却是空白

 原因分析:

fastapi的文件是提供的CDN为国外的网址,偶尔可能存在网络延迟,导致为空白,使用F12可以看到是文件获取不到

3、解决问题

第一种方式的再试试,存在这种可能性

第二种方式为复制官方文档提供的部分代码:

# 增加的代码部分from fastapi.openapi.docs import (get_redoc_html,get_swagger_ui_html,get_swagger_ui_oauth2_redirect_html,
)app = FastAPI(docs_url=None, redoc_url=None)@app.get("/docs", include_in_schema=False)
async def custom_swagger_ui_html():return get_swagger_ui_html(openapi_url=app.openapi_url,title=app.title + " - Swagger UI",oauth2_redirect_url=app.swagger_ui_oauth2_redirect_url,swagger_js_url="https://unpkg.com/swagger-ui-dist@5/swagger-ui-bundle.js",swagger_css_url="https://unpkg.com/swagger-ui-dist@5/swagger-ui.css",)

上述代码完全无脑复制到你的main.py中,覆盖app = 这一行即可,复制完如下:

# main.py
from fastapi import FastAPIfrom fastapi.openapi.docs import (get_redoc_html,get_swagger_ui_html,get_swagger_ui_oauth2_redirect_html,
)app = FastAPI(docs_url=None, redoc_url=None)@app.get("/docs", include_in_schema=False)
async def custom_swagger_ui_html():return get_swagger_ui_html(openapi_url=app.openapi_url,title=app.title + " - Swagger UI",oauth2_redirect_url=app.swagger_ui_oauth2_redirect_url,swagger_js_url="https://unpkg.com/swagger-ui-dist@5/swagger-ui-bundle.js",swagger_css_url="https://unpkg.com/swagger-ui-dist@5/swagger-ui.css",)@app.get("/") # 根路由
async def root():return "I want to change the world"if __name__ == "__main__":import uvicornuvicorn.run(app, host="0.0.0.0", port=8000)# 启动命令:uvicorn main:app --reload --host 0.0.0.0 --port 8000

保存,fastapi会自动重新加载,刷新网页即可。

http://www.ritt.cn/news/3629.html

相关文章:

  • dede模板打网站显示栏logo百度网站名称及网址
  • 做阿里云网站深圳网络络推广培训
  • 使用vue.js做企业网站省好多会员app
  • 罗湖附近公司做网站建设哪家技术好今日新闻10条简短
  • 网站公司做的比较好武汉seo招聘
  • 静态网站模板古典百度电脑版官网入口
  • 营销导向的企业网站建设步骤百度贴吧官网首页
  • 建设银行网站优点seo优化工具哪个好
  • 网站地址验证失败网络营销策划书的主要内容
  • 广州市公司网站建设报价开发一个网站需要哪些技术
  • 代理商加盟网站自己想做个网站怎么做
  • 做视频网站空间要多大安卓优化大师破解版
  • 甘肃省建设工程造价信息网站关键词收录
  • wordpress管理媒体库插件seo网站排名优化案例
  • 网站建设 互诺科技做百度推广员赚钱吗
  • 网页设计公司建设网站百度发布
  • 重庆网站建设吧深圳抖音seo
  • 城口网站建设疫情最新资讯
  • 莆田网站制作站长工具app
  • 网上可以注册公司吗?都需要什么搜索引擎优化专员
  • dedecms手机网站模板泰安百度推广代理
  • 网站后台 英语app怎么开发出来的
  • 如何在eclipse上做网站商家推广平台有哪些
  • 做网站时的兼容问题百度推广营销怎么做
  • 怎样免费做网站视频讲解网络优化工程师主要负责什么工作
  • 电子商务是建网站域名注册商有哪些
  • 家居网站建设总结免费推广产品的网站
  • 成都哪家做网站的最好东莞网络营销
  • 宣传片拍摄脚本模板百度竞价seo排名
  • 佛山网站建设怎样做西安做网站公司