我的系统架构当前将一个表单数据blob从前端发送到后端,这两个表单数据blob都托管在不同端口的localhost上。表单数据通过FastAPI库在后端接收,如图所示。
@app.post('/avatar/request')
async def get_avatar_request(request: Request, Authorize: AuthJWT = Depends()):
form = await request.form()
return run_function_in_jwt_wrapper(get_avatar_output, form, Authorize, False)
目前,我正在尝试使用请求库将未修改的表单数据从后端转发到另一个FASTApi端点,如下所示:
response = requests.post(models_config["avatar_api"], data = form_data, headers = {"response-type": "blob"})
虽然目标端点确实接收表单数据,但它似乎没有正确解析UploadFile组件。我没有得到相应的Starlete UploadFile数据结构,而是收到了类名的字符串,如下面的错误消息所示:
FormData([('avatarFile', '<starlette.datastructures.UploadFile object at 0x7f8d25468550>'), ('avatarFileType', 'jpeg'), ('background', 'From Image'), ('voice', 'en-US-Wavenet-B'), ('transcriptKind', 'text'), ('translateToLanguage', 'No translation'), ('transcriptText', 'do')])
我该如何处理这个问题?