fastapi.Response() 未返回自定义响应

fastapi.Response() not returning customized response

api = fastapi.FastAPI()

@api.get('/api/sum')

def caculate(z):

    if z == 0 :
        return fastapi.Response(content = {'Error' : 'Z must be an integer'},
        status_code=400,
        media_type="application/json")
    return

uvicorn.run(api, host="127.0.0.50", port=8000) #server

我正在尝试 return 内容中提到的响应和 400 http 响应。但它给了我 200 个响应,还给我 'null' 而不是内容。

您需要为查询参数提供类型并使用 JSONResponse 作为 return 如果您希望对象被 return 编辑为 json 或序列化如果你想使用 Response.

,你自己的数据 json.dumps()
  def caculate(z: int=0):
      if z == 0 :
          return fastapi.responses.JSONResponse(content = {'Error' : 'Z must be an integer'},status_code=400)