POST 到外部 url 使用 FastAPI

POST to external url with FastAPI

我一直在努力弄清楚如何使用 FastAPI 正确地执行 POST。

我目前正在 POST 使用 python 的“请求模块”并传递一些 json 数据,如下所示:

import requests
from fastapi import FastAPI

json_data = {"user" : MrMinty, "pass" : "password"} #json data
endpoint = "https://www.testsite.com/api/account_name/?access_token=1234567890" #endpoint
print(requests.post(endpoint, json=json_data). content)

我不明白如何仅使用 FastAPI 的函数和阅读响应来做同样的事情POST。

模块请求不是FastAPI函数,而是你需要的一切, 首先,您需要在您的计算机或您有权访问的外部服务器中安装 FastAPI 服务器 运行。

然后你需要知道你服务器的IP或者域名,然后你发出请求:

import requests
some_info = {'info':'some_info'}
head = 'http://192.168.0.8:8000' #IP and port of your server 
# maybe in your case the ip is the localhost 
requests.post(f'{head}/send_some_info', data=json.dumps(tablea))
# "send_some_info" is the address of your function in fast api

您的 FastApI 脚本看起来像这样,并且在您发出请求时应该是 运行:

from fastapi import FastAPI
app = FastAPI()

@app.post("/send_some_info")
async def test_function(dict: dict[str, str]):
    # do something
    return 'Success'