上一页 1 2 3 4 5 6 7 8 9 10 ··· 49 下一页
摘要: 前言 详解 Form 详解 File 路径函数混合使用 Form、File from fastapi import FastAPI, File, Form, UploadFile app = FastAPI() @app.post("/files/") async def create_file( 阅读全文
posted @ 2021-09-25 10:16 小菠萝测试笔记 阅读(452) 评论(0) 推荐(0) 编辑
摘要: 前言 可以使用 FastAPI 提供的 File 定义客户端要上传的文件 学习 File 前最好先学习 Form:https://www.cnblogs.com/poloyy/p/15311533.html 安装 python-multipart 要用 File,需要先安装这个库 pip insta 阅读全文
posted @ 2021-09-25 10:10 小菠萝测试笔记 阅读(6054) 评论(1) 推荐(0) 编辑
摘要: 前言 form-data 表单格式的请求数据其实也是挺常见的 FastAPI 通过 Form 来声明参数需要接收表单数据 安装 python-multipart 要用 Form,需要先安装这个库 pip install python-multipart Form Form 是继承自 Body,所以可 阅读全文
posted @ 2021-09-25 10:10 小菠萝测试笔记 阅读(2248) 评论(0) 推荐(1) 编辑
摘要: 前言 有多个模型,且请求/响应需要声明多个模型的时候,可以根据不同使用场景结合 typing 库里面的 Union、List 来达到目的 Union 作用 联合类型,详细教程 使用 Union 时,建议首先包含具体的类型,然后是不太具体的类型 实际代码 #!usr/bin/env python # 阅读全文
posted @ 2021-09-25 10:09 小菠萝测试笔记 阅读(1190) 评论(0) 推荐(0) 编辑
摘要: 前言 在一个完整的应用程序中,通常会有很多个相关模型,比如 请求模型需要有 password 响应模型不应该有 password 数据库模型可能需要一个 hash 加密过的 password 多个模型的栗子 需求 注册功能 请求输入密码 响应不需要输出密码 数据库存储加密后的密码 实际代码 #!us 阅读全文
posted @ 2021-09-25 10:08 小菠萝测试笔记 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 前言 和指定响应模型一样,可以在任何路径操作中添加参数 status_code,用于声明响应的 HTTP 状态码 @app.get() @app.post() @app.put() @app.delete() 最简单的栗子 #!usr/bin/env python # -*- coding:utf- 阅读全文
posted @ 2021-09-25 10:08 小菠萝测试笔记 阅读(510) 评论(0) 推荐(0) 编辑
摘要: 前言 前面文章写的这么多路径函数最终 return 的都是自定义结构的字典 FastAPI 提供了 response_model 参数,声明 return 响应体的模型 什么是路径操作、路径函数 # 路径操作 @app.post("/items/", response_model=Item) # 路 阅读全文
posted @ 2021-09-25 10:08 小菠萝测试笔记 阅读(1749) 评论(0) 推荐(0) 编辑
摘要: 查看一个接口的 Header 进到某个网站,右键检查元素;或者直接 F12 找到 Network,选择一个请求,就能看到 Request Header、Response Header 啦 FastAPI 提供的 Header Header 是 Path、Query、Cookie 的“姐妹”类 它也继 阅读全文
posted @ 2021-09-25 10:07 小菠萝测试笔记 阅读(2459) 评论(0) 推荐(0) 编辑
摘要: 查看一个网站的 Cookies 进到某个网站,右键检查元素;或者直接 F12 找到 Application-Cookies 就能看到啦 FastAPI 提供的 Cookie Cookie 是 Path 和 Query 的“姐妹”类 它也继承自相同的通用 Param 类 注意:从 fastapi 导入 阅读全文
posted @ 2021-09-25 10:07 小菠萝测试笔记 阅读(1481) 评论(0) 推荐(0) 编辑
摘要: 常见的数据类型 int float str bool 但 FastAPI 支持使用更复杂的数据类型 仍然能得到 FastAPI 的支持 IDE 智能提示 请求数据的数据类型转换 响应数据的数据类型转换 数据验证 自动注释和文档 复杂的数据类型 UUID 常见的唯一标识符 str 类型 datetim 阅读全文
posted @ 2021-09-25 10:07 小菠萝测试笔记 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 前言 FastAPI 可以给 Pydantic Model 或者路径函数声明需要接收的请求示例,而且可以显示在 OpenAPI 文档上 有几种方式,接下来会详细介绍 Pydantic 的 schema_extra 可以使用 Config cass 和 schema_extra 为 Pydantic 阅读全文
posted @ 2021-09-25 10:00 小菠萝测试笔记 阅读(593) 评论(0) 推荐(0) 编辑
摘要: 带有类型参数的字段 Python 有一种特定的方法来声明具有内部类型或类型参数的列表 其实前面都见过,就是 List[str] Set[str] Tuple[str] Dict[str, int] List、Set、Tuple、Dict 都是从 typing 模块中导入的 typing 常见类型提示 阅读全文
posted @ 2021-09-25 09:59 小菠萝测试笔记 阅读(510) 评论(0) 推荐(1) 编辑
摘要: 背景 from pydantic import BaseModel, EmailStr class UserIn(BaseModel): username: str password: str email: EmailStr full_name: Optional[str] = None 定义的 P 阅读全文
posted @ 2021-09-21 18:09 小菠萝测试笔记 阅读(706) 评论(0) 推荐(0) 编辑
摘要: 前言 前面讲了 Query、Path、Body,均可以对某个字段进行额外的校验和添加元数据 这一篇来讲 Fields,它针对 Pydantic Model 内部字段进行额外的校验和添加元数据 Fields 它是 Pydantic 提供的方法,并不是 FastAPi 提供的哦 该方法返回了一个实例对象 阅读全文
posted @ 2021-09-19 21:05 小菠萝测试笔记 阅读(1157) 评论(0) 推荐(0) 编辑
摘要: 使用 typing 中的 List、Set、Tuple 的栗子 from typing import Optional import uvicorn from fastapi import FastAPI, Body from typing import List, Tuple, Set app = 阅读全文
posted @ 2021-09-19 14:15 小菠萝测试笔记 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 前言 上一篇有讲到将参数类型指定为 Pydantic Model,这样 FastAPI 会解析它为一个 Request Body 那单类型(int、float、str、bool...)参数可以成为 Request Body 的一部分吗?答案是可以的 通过 Body 函数即可完成,和 Path、Que 阅读全文
posted @ 2021-09-19 13:38 小菠萝测试笔记 阅读(798) 评论(0) 推荐(0) 编辑
摘要: Path、Query、Request Body 混合使用 from fastapi import FastAPI, Path, Query from typing import Optional from pydantic import BaseModel import uvicorn app = 阅读全文
posted @ 2021-09-19 12:09 小菠萝测试笔记 阅读(661) 评论(0) 推荐(0) 编辑
摘要: 前言 上一篇讲了可以为查询参数添加额外的校验和元数据,Query 库:https://www.cnblogs.com/poloyy/p/15306809.html 这篇讲可以为路径查询添加额外的校验和元数据,Path 库 Path 可以为路径参数添加额外的校验和元数据,跟 Query 的参数是一毛一 阅读全文
posted @ 2021-09-19 11:29 小菠萝测试笔记 阅读(1682) 评论(0) 推荐(0) 编辑
摘要: 前言 接口传参方式之一:通过发送请求体(Request Body)来传递请求数据 在 FastAPI,提倡使用 Pydantic 模型来定义请求体 这篇文章会详细讲不使用 Pydantic 和 使用 Pydantic 发送请求体的栗子 注意 请求体并不是只有 POST 请求有,只不过 POST 更常 阅读全文
posted @ 2021-09-18 20:27 小菠萝测试笔记 阅读(3636) 评论(0) 推荐(0) 编辑
摘要: 可选参数 上一篇文章讲过查询参数可以不是必传的,可以是可选参数 from fastapi import FastAPI from typing import Optional import uvicorn app = FastAPI() # 必传参数+可选参数 @app.get("/items") 阅读全文
posted @ 2021-09-18 19:28 小菠萝测试笔记 阅读(3203) 评论(1) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 49 下一页