> 백엔드 개발 > 파이썬 튜토리얼 > FastAPI에서 POST 요청을 처리하고 JSON 응답을 반환하는 방법

FastAPI에서 POST 요청을 처리하고 JSON 응답을 반환하는 방법

WBOY
풀어 주다: 2023-07-29 15:08:01
원래의
5131명이 탐색했습니다.

FastAPI에서 POST 요청을 처리하고 JSON 응답을 반환하는 방법

FastAPI는 표준 Python 유형 힌트를 기반으로 하는 빠르고(고성능) 사용하기 쉬운 최신 웹 프레임워크입니다. 강력한 비동기 지원을 제공하며 동시성이 높은 상황을 쉽게 처리할 수 있습니다. FastAPI에서는 간결한 코드를 사용하여 POST 요청을 처리하고 JSON 응답을 반환할 수 있습니다. 이 문서에서는 FastAPI에서 이 작업을 수행하는 방법을 설명하고 해당 코드 예제를 제공합니다.

먼저 FastAPI 애플리케이션을 만들어야 합니다. 다음은 애플리케이션을 생성하는 기본 코드입니다.

from fastapi import FastAPI

app = FastAPI()
로그인 후 복사

다음으로 POST 요청을 처리할 경로를 생성해야 합니다. FastAPI는 데코레이터를 사용하여 경로를 정의합니다. 다음은 POST 요청을 처리하는 예입니다.

@app.post("/api/submit")
async def submit_data(data: dict):
    # 在这里进行数据处理
    # ...
    # 返回JSON响应
    return {"message": "Data submitted successfully"}
로그인 후 복사

위 예에서는 /api/submit </ 경로와 함께 데코레이터 <code>@app.post를 사용하여 경로를 정의했습니다. code>의 경우 요청 방법은 POST입니다. 라우팅 함수 submit_datadata라는 매개변수를 허용하며 매개변수 유형은 dict이며 POST 요청에서 데이터를 수신하는 데 사용됩니다. @app.post定义了一个路由,该路由的路径为/api/submit,请求方法为POST。路由函数submit_data接受一个名为data的参数,参数类型为dict,它将用于接收POST请求中的数据。

submit_data函数中,我们可以进行数据处理的逻辑,如验证数据、保存到数据库等等。然后,我们使用return语句返回一个JSON响应。在这个示例中,我们返回了一个包含键"message"和值"Data submitted successfully"的字典。

注意,在FastAPI中,使用async def来定义异步函数,这样可以充分利用框架的异步特性,提高性能。

为了使应用程序能够运行起来,我们需要添加以下代码:

if __name__ == "__main__":
    uvicorn.run(app, host="0.0.0.0", port=8000)
로그인 후 복사

以上代码将使应用程序运行在本地的0.0.0.0地址上,监听端口8000。

现在,我们已经完成了在FastAPI中处理POST请求并返回JSON响应的基本代码。我们可以通过向/api/submit发送一条POST请求,并在请求体中包含JSON数据来测试我们的应用程序。

以下是一个使用Python requests库发送POST请求的示例:

import requests

data = {"name": "John", "age": 30}
response = requests.post("http://localhost:8000/api/submit", json=data)

print(response.json())
로그인 후 복사

在上面的示例中,我们创建了一个字典data,包含了一些数据。然后,我们使用requests.post方法发送POST请求,并通过json参数将数据作为JSON发送。最后,我们使用response.json()

submit_data 함수에서는 데이터 확인, 데이터베이스 저장 등의 데이터 처리 로직을 수행할 수 있습니다. 그런 다음 return 문을 사용하여 JSON 응답을 반환합니다. 이 예에서는 "message" 키와 "Data submit 성공적으로 제출됨" 값이 포함된 사전을 반환합니다.

FastAPI에서 async def를 사용하여 비동기 함수를 정의하면 프레임워크의 비동기 기능을 최대한 활용하고 성능을 향상시킬 수 있습니다. 🎜🎜애플리케이션을 실행하려면 다음 코드를 추가해야 합니다: 🎜rrreee🎜위 코드는 애플리케이션이 로컬 0.0.0.0 주소에서 실행되고 포트 8000에서 수신 대기하도록 합니다. 🎜🎜이제 FastAPI에서 POST 요청을 처리하고 JSON 응답을 반환하는 기본 코드를 완성했습니다. /api/submit에 POST 요청을 보내고 요청 본문에 JSON 데이터를 포함시켜 애플리케이션을 테스트할 수 있습니다. 🎜🎜다음은 Python requests 라이브러리를 사용하여 POST 요청을 보내는 예입니다. 🎜rrreee🎜위 예에서는 일부 데이터가 포함된 data 사전을 만들었습니다. 그런 다음 requests.post 메서드를 사용하여 POST 요청을 보내고 json 매개변수를 통해 데이터를 JSON으로 보냅니다. 마지막으로 response.json() 메서드를 사용하여 응답 JSON 데이터를 얻고 이를 인쇄합니다. 🎜🎜위의 간단한 예를 통해 FastAPI에서 POST 요청을 처리하고 JSON 응답을 반환하는 방법을 보여줍니다. FastAPI는 간단하고 강력한 API 디자인을 제공하므로 웹 애플리케이션을 보다 효율적으로 구축할 수 있습니다. 이 글이 FastAPI를 사용하여 POST 요청을 처리하는 과정에 도움이 되기를 바랍니다. 🎜

위 내용은 FastAPI에서 POST 요청을 처리하고 JSON 응답을 반환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿