帮我使用fastapi写一个新闻列表以及详情页接口
时间: 2024-01-31 22:02:57 浏览: 103
毕设&课程作业_基于FastAPI实现的Frida-RPC工具,自动解析JavaScript文件生成对应API接口.zip
好的,首先需要安装 fastapi 和 uvicorn:
```
pip install fastapi uvicorn
```
然后我们创建一个 main.py 文件,并编写以下代码:
```python
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def read_root():
return {"Hello": "World"}
@app.get("/news/")
async def news_list():
return {"news": [
{"id": 1, "title": "News 1", "content": "Content 1"},
{"id": 2, "title": "News 2", "content": "Content 2"},
{"id": 3, "title": "News 3", "content": "Content 3"}
]}
@app.get("/news/{news_id}")
async def news_detail(news_id: int):
news = {"id": news_id, "title": f"News {news_id}", "content": f"Content {news_id}"}
return {"news": news}
```
上述代码中,我们创建了一个 FastAPI 应用程序,并定义了三个路由:
- `/`:返回 {"Hello": "World"},用于测试连接是否正常。
- `/news/`:返回一个新闻列表,其中包含三个新闻的 ID、标题和内容。
- `/news/{news_id}`:返回指定 ID 的新闻详情,其中包含指定新闻的 ID、标题和内容。
最后,我们使用 uvicorn 启动应用程序:
```
uvicorn main:app --reload
```
现在我们可以在浏览器或者使用 curl 命令访问这些接口,例如:
```
http://localhost:8000/news/
http://localhost:8000/news/1
```
以上就是一个简单的新闻列表以及详情页接口的实现。
阅读全文