FastAPI框架使用
原文链接:https://www.cnblogs.com/neo98/p/12250730.html
<a id="cb_post_title_url" class="postTitle2" href="https://www.cnblogs.com/neo98/p/12250730.html">FastAPI框架快速构建高性能的api服务</a>
</h1>
<div class="clear"></div>
<div class="postBody">
<div id="cnblogs_post_body" class="blogpost-body ">
<p><a href="https://cloud.tencent.com/developer/article/1431448">https://cloud.tencent.com/developer/article/1431448</a>
</p>
<p> </p>
<p>使用FastAPI可以非常快速的构建出一套高性能的api服务。下面通过实战演示一下:</p>
<blockquote>
<p>fastapi目前仅支持python 3.6+以上版本。</p>
</blockquote>
<h4 id="%E4%B8%80%E3%80%81%E5%AE%89%E8%A3%85fastapi%E5%92%8Cuvicorn"><strong>一、安装fastapi和uvicorn</strong>
</h4>
<pre class="prism-token token language-javascript">pip install fastapi
<a id="cb_post_title_url" class="postTitle2" href="https://www.cnblogs.com/neo98/p/12250730.html">FastAPI框架快速构建高性能的api服务</a>
</h1>
<div class="clear"></div>
<div class="postBody">
<div id="cnblogs_post_body" class="blogpost-body ">
<p><a href="https://cloud.tencent.com/developer/article/1431448">https://cloud.tencent.com/developer/article/1431448</a>
</p>
<p> </p>
<p>使用FastAPI可以非常快速的构建出一套高性能的api服务。下面通过实战演示一下:</p>
<blockquote>
<p>fastapi目前仅支持python 3.6+以上版本。</p>
</blockquote>
<h4 id="%E4%B8%80%E3%80%81%E5%AE%89%E8%A3%85fastapi%E5%92%8Cuvicorn"><strong>一、安装fastapi和uvicorn</strong>
</h4>
<pre class="prism-token token language-javascript">pip install fastapi
pip install uvicorn
二、新建一个main.py文件,编写如下代码
from fastapi import FastAPI
app = FastAPI()
@app.get(“/“)
def read_root():
return {“Hello”: “World”}
@app.get(“/items/{item_id}”)
def read_item(item_id: int, q: str = None):
return {“item_id”: item_id, “q”: q}
三、运行接口服务
在命令行,执行下面的命令
uvicorn main:app --reload
四、请求接口
运行成功后在浏览器打开http://127.0.0.1:8000 ,你将在一个JSON格式响应结果:
{'hello':'world'}
再次在浏览器打开http://127.0.0.1:8000/items/5?q=somequery,你将在一个如下JSON格式响应结果:
{'item_id':5,'q':'somequery'}
五、可视化API文档
现在在浏览器中打开http://127.0.0.1:8000/docs,你会看到一个可以交互的api文档
你也可以其他方法的装饰器:
@app.post()
@app.put()
@app.delete()
还有一些比较少见的方法的装饰器:
@app.options()
@app.head()
@app.patch()
@app.trace(
建议
你可以使用任意的HTTP方法.
FastAPI不强制任何特定函数。
此处提供的信息,仅供参考,并非必需。
例如,当使用 GraphQL , 你通常会只执行post
方法
总结
- Import
FastAPI
. - 创建一个
app
实例. - 编写一个 路径操作装饰器 (比如
@app.get("/")
). - 编写一个路径操作函数 (比如上方的
def root(): ...
). - 运行开发服务器(比如
uvicorn main:app --reload
).
</ul>
</div>
</div>
</div>
</div>
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment