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

网站团购活动页面怎么做百度推广优化怎么做

网站团购活动页面怎么做,百度推广优化怎么做,模板建网站怎么做seo,广州建站外包安装Fast API:https://fastapi.tiangolo.com/zh/ FastAPI的优点: 高性能 FastAPI 基于 ASGI(异步服务器网关接口)和 Starlette 框架,支持异步编程,能够高效处理大量并发请求。其性能接近 Node.js 和 Go&am…

安装Fast API:https://fastapi.tiangolo.com/zh/

FastAPI的优点:

  1. 高性能
    FastAPI 基于 ASGI(异步服务器网关接口)和 Starlette 框架,支持异步编程,能够高效处理大量并发请求。其性能接近 Node.js 和 Go,比传统的 Python 框架(如 Django 和 Flask)快 3-5 倍,特别适合高并发场景。

  2. 自动生成 API 文档
    FastAPI 能够根据代码中的类型提示和注解自动生成交互式 API 文档(如 Swagger UI 和 ReDoc)。这不仅减少了手动编写文档的工作量,还方便了开发和调试。

  3. 类型提示与数据验证
    FastAPI 利用 Python 的类型提示机制和 Pydantic 库,提供强大的数据验证和序列化功能。这确保了输入数据的正确性,减少了运行时错误,并提高了代码的可读性和可维护性。

  4. 异步支持
    FastAPI 原生支持异步编程(async/await),能够高效处理 I/O 密集型任务(如数据库查询、API 调用),特别适合实时数据处理和高并发场景。

  5. 易于使用和学习
    FastAPI 的设计注重用户体验,代码简洁易懂,支持代码自动补全和编辑器提示,降低了学习曲线,提高了开发效率。

  6. 安全性
    FastAPI 内置支持多种安全机制,如 OAuth2、JWT 等认证方式,并提供 HTTPS 支持,确保 API 的安全性。

Pycharm中创建FastAPI项目:

先导入FastAPI,用来定义API

  • FastAPI 是一个 Python 框架,用来创建 Web API(应用程序接口)。你可以把它想象成一个工具箱,用来搭建一个可以接收请求并返回响应的服务器。

from fastapi import FastAPI

创建FastAPI实例

  • app 是整个应用的核心,它会处理所有的请求和响应。你可以把它看作一个“服务器”,它会监听用户的请求,并根据代码的逻辑返回相应的结果。

app = FastAPI()

装饰器

  • 这是一个装饰器,用来定义一个路由(route)。路由是用户访问 API 的路径。

  • @app.get("/") 表示当用户访问网站的根路径(即 /)时,会触发下面的函数。

  • / 是默认的首页路径,比如如果你的网站是 http://example.com,那么访问 http://example.com/ 就会触发这个路由。

@app.get("/")

异步函数

  • 这是一个异步函数(async 表示异步操作),名字叫 root

  • 异步操作是 FastAPI 的一个特性,它可以让程序在等待某些操作(比如数据库查询)时,同时处理其他请求,从而提高性能。

  • 这个函数的作用是处理上面定义的 / 路由的请求。

async def root():

函数的返回值

  • 这行代码是函数的返回值。

  • 它返回一个字典({"message": "Hello World"}),FastAPI 会自动将这个字典转换为 JSON 格式(一种常见的数据传输格式)。

  • 当用户访问 / 路径时,浏览器会收到一个 JSON 响应:{"message": "Hello World"}

return {"message": "Hello World"}

完整代码为:

from fastapi import FastAPI # 导⼊FastAPI,⽤于定义API
app = FastAPI() # 创建FastAPI实例
@app.get("/")
async def root():return {"message": "Hello World"}

运行应用:打开终端:输入uvicorn main:app --reload

方式一:终端输入命令启动 , main是程序的名称,app 是实例化的名称,uvicorn main:app --reload

打开浏览器中,在浏览器中输入终端给的网址,http://127.0.0.1:8000,你应该能够看到 FastAPI 自动生成的交互式文档,并在根路径 ("/") 返回的 JSON 响应。

方式二:

if __name__ == '__main__':import uvicornprint(__name__)uvicorn.run("run:app", host="127.0.0.1", port=8080, reload=True)

路径操作

union类型

⽤于⽀持多种数据类型的参数注解
from typing import Union # 导⼊Union, ⽤于定义可选类型
from fastapi import FastAPI # 导⼊FastAPI,⽤于构建RESTful API
@app.gte(/items/item_id)
def read_item(x:int,y:union[str,none]=none):print("x":x,"y":y)

FastAPI 交互式 API 文档

from fastapi import FastAPI # 引⼊FastAPI类,⽤于创建⼀个应⽤
import uvicorn # 引⼊uvicorn,⽤于启动服务
from typing import Union # 引⼊Union类,⽤于类型注解
from pydantic import BaseModel # 引⼊pydantic类,⽤于定义数据结构
app = FastAPI() # 创建⼀个应⽤,app是⼀个FastAPI实例
class Item(BaseModel): # 定义⼀个Item类,继承⾃BaseModel,⽤于定义请求体中的数据结构# 定义⼀个name属性,类型为strname: str# 定义⼀个price属性,类型为floatprice: float# 定义⼀个is_offer属性,类型为Union[bool, None],默认为Noneis_offer: Union[bool, None] = None
@app.get("/") # 装饰器,表示定义⼀个根路径的get请求
# 定义⼀个根路径的get请求,返回⼀个字典,键值分别为Hello和World
# async 表示异步请求,可以提⾼性能
# 测试访问:http://127.0.0.1:8000/
async def read_root():return {"Hello": "World"}
@app.get("/items/{item_id}")
# 定义⼀个路径参数为item_id的get请求,返回⼀个字典,键值分别为item_id和q
# Union[str, None] 表示q可以为str类型或者None类型,默认为None
# 测试访问:http://127.0.0.1:8000/items/3?q=abc
async def read_item(item_id: int, q: Union[str, None] = None):return {"item_id": item_id, "q": q}
@app.put("/items/{item_id}")
# 测试访问:http://127.0.0.1:8000/items/3
async def update_item(item_id: int, item: Item):# 定义⼀个路径参数为item_id的put请求,返回⼀个字典,键值分别为item_name和item_idreturn {"item_name": item.name, "item_id": item_id}
if __name__ == "__main__":# 启停⽅式:# 1.⽅式1指令式:# 服务器启动指令 uvicorn main:app --reload# fastDemo1:app 表示main.py⽂件中的app实例# 服务器停⽌指令 ctrl+c# 2.⽅式2界⾯式:# ⿏标右键启动----》run main.py# 界⾯右上⻆的停⽌按钮# 启动服务,host指定主机地址,port指定端⼝号,reload=True表示当代码发⽣变化时,⾃动重启服务# main:app---- 表示main.py⽂件中的app实例uvicorn.run("fastAPIDemo3:app", host="127.0.0.1", port=8000, reload=Tr
ue)
代码块作用
依赖导入引入框架、服务器、类型注解和数据验证库
应用实例化创建FastAPI核心对象
Pydantic模型定义请求体数据结构并实现自动校验
路由装饰器绑定HTTP方法与URL路径到处理函数
请求处理函数实现业务逻辑并返回响应
服务器启动配置ASGI服务器参数并启动服务
from fastapi import FastAPI          # 核心框架类
import uvicorn                       # ASGI服务器
from typing import Union             # 类型注解工具
from pydantic import BaseModel       # 数据验证库

  • FastAPI:构建API的核心类。
  • uvicorn:用于启动高性能ASGI服务器。
  • Union:定义联合类型(如Union[str, None])。
  • BaseModel:创建数据模型的基类(用于请求体校验)。
app = FastAPI()  # 创建FastAPI应用实例
  • 核心对象:所有路由和配置的载体。
  • 自动注入:后续装饰器通过@app.get等绑定路由。

4. 路由与请求处理

(1) 根路径GET请求

class Item(BaseModel):name: str                       # 必填字段,类型为字符串price: float                    # 必填字段,类型为浮点数is_offer: Union[bool, None] = None  # 可选字段,默认为None
  • 作用:定义请求体的数据结构。
  • 校验规则
    • nameprice为必填字段,类型严格校验。
    • is_offer为可选字段,接受boolNone
  • 自动文档:模型结构会显示在Swagger UI中。

(2) 带路径参数的GET请求

@app.get("/")
async def read_root():return {"Hello": "World"}
  • 路径http://localhost:8000/
  • 行为:返回固定JSON响应。
  • 异步支持async声明使函数支持异步处理。

(3) 带请求体的PUT请求

@app.put("/items/{item_id}")
async def update_item(item_id: int, item: Item):return {"item_name": item.name, "item_id": item_id}
  • 请求体校验item参数必须是符合Item模型的JSON。
  • 自动解析:FastAPI将JSON请求体转换为Item对象。
if __name__ == "__main__":uvicorn.run("fastAPIDemo3:app", host="127.0.0.1", port=8000, reload=True)
  • 模块定位fastAPIDemo3:app表示fastAPIDemo3.py文件中的app实例。
  • 参数说明
    • host:绑定到本地回环地址。
    • port:监听8000端口。
    • reload:开发模式下自动重载代码变更。
  • 启动方式
    • 直接运行脚本(python main.py)。
    • 命令行指令:uvicorn main:app --reload
http://www.dtcms.com/a/608425.html

相关文章:

  • 做商城网站技术要点建设银行鄂州分行官方网站
  • 网站建设合同有效期办公门户网站模板下载
  • 广州好蜘蛛网站建设厦门微信公众号开发
  • 陕西网站开发联系电话wordpress下载主题下载
  • 怎么把网站排名到百度前三名建设网贷网站
  • wap网站建设学什么用wordpress 建网站
  • 杭州网站建设工作室装修加盟好项目
  • 专业建设网站服务企业咨询内容有哪些
  • 做网站都去哪里找模板wordpress 搬家后
  • 旅游网站管理系统论文目前做响应式网站最好的cms
  • 如何在企业版社保网站做增员毕业设计h5网站制作
  • 如何用wordpress建站asp网站防注入代码
  • 网站模块结构图网络培训心得体会总结
  • 网站之家查询域名文登做网站的公司
  • 网站建设c云世家网络快速仿站网站建设
  • 把自己做的网站传到网上娄星区建设局网站
  • 在线购物网站的设计与实现烟台网站制作山海云
  • wordpress首页文章列表只显示摘要seo辅助工具
  • 郑州网站建设品牌品牌的定义
  • 潍坊网站建设平台网站开发流程说明
  • 北京服装网站建设地址维护网站需要多少钱
  • 内部劵网站怎么做青岛知名网站建设哪家好
  • 网站购买域名吗2015网站备案教程
  • 网站建设计划书300wordpress网站字体大小
  • 网页制作模板的网站代码视频营销网站
  • 公众号开发 网站开发视频制作表情包
  • 设计网站大全国内企业专属空间官网
  • 新华网站建设123网址之家118
  • .net 网站 数据库配置文件服装网页设计素材
  • seo建站是什么泾县网站seo优化排名