![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
fastapi
一只路过的小码农cxy
咳咳
展开
-
fastapi教程-进阶九(Dependencies-1)
参考内容:https://fastapi.tiangolo.com/fastapi有非常强大的依赖注入系统,虽然听起来会很难,但是用起来非常简单,并且非常方便我们集成各种组件什么是依赖注入依赖注入是指在我们的项目中,定义了一些方法,这些方法是我们某些路径方法需要依赖的,这些方法叫做依赖项,当代码运行时,fastapi会将这个依赖项注入到路径方法中。如果很难理解,我们可以通过了解他的使用场景来理解他的意思。依赖注入可以用在下面的场景:有共享逻辑时,也就是重复的业务逻辑共享数据连接安全机制原创 2020-09-18 15:56:23 · 3063 阅读 · 3 评论 -
fastapi教程-进阶八(Handling Errors)
参考内容:https://fastapi.tiangolo.com/在很多情况下,在服务端出现错误时,我们需要告诉客户端出现了什么错误,例如:客户端没有足够的权限进行该操作。客户端无权访问该资源。客户端尝试访问的项目不存在。这时,我们需要返回给客户端400-499范围内的HTTP状态码。接下来介绍如何通过fastapi对服务端错误进行处理并返回给客户端HTTP状态码HTTPException如果希望将错误返回给客户端,可以使用HTTPException:from fastapi i原创 2020-09-09 15:05:44 · 1313 阅读 · 0 评论 -
fastapi教程-进阶七(Request Forms and Files)
参考内容:https://fastapi.tiangolo.com/Form Data前面介绍的参数都是以json格式传递的,这节我们来介绍表单参数如何使用如果要使用表单参数要先安装python-multipartpip install python-multipart下面这个例子模拟了登陆的表单验证,我们可以看到,参数的声明没有用Body或者Query,而是用了Formfrom fastapi import FastAPI, Formapp = FastAPI()@app.原创 2020-09-04 15:21:17 · 1818 阅读 · 0 评论 -
fastapi教程-进阶六(Response Status Code)
参考内容:https://fastapi.tiangolo.com/在fastapi教程-进阶五(Response Model)中我们学习了如何控制响应体结构,这节来学习如何使用http状态码:from fastapi import FastAPIapp = FastAPI()@app.post("/items/", status_code=201)async def create_item(name: str): return {"name": name}启动服务,打开h原创 2020-09-03 14:19:03 · 1272 阅读 · 0 评论 -
fastapi教程-进阶五(Response Model)
参考内容:https://fastapi.tiangolo.com/Response Model还是以一个例子开头:from typing import Optionalfrom fastapi import FastAPIfrom pydantic import BaseModel, EmailStrapp = FastAPI()class UserIn(BaseModel): username: str password: str email: Ema原创 2020-09-02 14:47:40 · 4886 阅读 · 1 评论 -
fastapi教程-进阶四(cookie、header parameter)
在fastapi教程-进阶(三)和fastapi教程-进阶(二)中我们介绍了Query、Path和Body参数,这里介绍cookie和headerCookiefrom typing import Optionalfrom fastapi import Cookie, FastAPIapp = FastAPI()@app.get("/items/")async def read_items(ads_id: Optional[str] = Cookie(None)): return原创 2020-09-01 11:02:36 · 2097 阅读 · 0 评论 -
fastapi教程-进阶(三)
参考内容:https://fastapi.tiangolo.com/在fastapi教程的前几篇教程里,我们学习了如何声明路径参数、查询参数和请求体,这篇我们会对这些参数进行扩展学习,学习更多的用法Query Parameters我们先看一个例子:from typing import Optionalfrom fastapi import FastAPI, Queryapp = FastAPI()@app.get("/items/")async def read_items(q原创 2020-08-28 18:11:06 · 1632 阅读 · 0 评论 -
fastapi教程-进阶(二)
Request Body这里我们来介绍一下POST请求时,fastapi是如何接收请求体的from typing import Optionalfrom fastapi import FastAPIfrom pydantic import BaseModelclass Item(BaseModel): name: str description: Optional[str] = None price: float tax: Optional[float] =原创 2020-08-28 15:06:45 · 2339 阅读 · 0 评论 -
fastapi教程——进阶(一)
一个简单的栗子from fastapi import FastAPIapp = FastAPI()@app.get("/")async def root(): return {"message": "Hello World"}FASTAPI继承Starlette,因此在Starlette中的所有可调用的对象在FASTAPI中可以直接引用编写步骤步骤一:导入Fast...原创 2019-10-11 14:58:29 · 21037 阅读 · 4 评论 -
fastapi——快速入门
fastapi是高性能的web框架。他的主要特点是:- 快速编码- 减少人为bug- 直观- 简易- 具有交互式文档- 基于API的开放标准(并与之完全兼容):OpenAPI(以前称为Swagger)和JSON Schema。技术背景:python3.6+、Starlette、Pydantic安装pip install fastapipip install uvicorn...原创 2019-09-26 15:27:51 · 60800 阅读 · 15 评论