python - 如何在 Flask 中使用文件数据重新路由/重新创建 POST 请求
问题描述
我正在尝试将我的 Python Flask webservice 收到的文件上传 POST 请求转发到另一个 API。我已经收到了 API 可以接受的格式的请求,但是,我无法找到任何方法来接收我收到的请求并将其直接转发到 API。我曾想象过可能存在这样的事情:
requests.post("url_of_api", request)
request
Flask 对接收到的请求的表示在哪里。这样的事情可能吗?
或者,我正在尝试使用相同的数据重新创建请求。问题是请求包含文件上传(特别是 wav)。我尝试使用文件数据创建请求,如下所示:
requests.post("url_of_api",files={"audio_data":("test.wav",request.files["audio_data"].stream.read())})
我可以在 Wireshark 中看到请求在文件表示方面几乎相同,但是,字节流的开头和结尾略有不同,第二个请求中的文件少了 46 个字节的数据。此外,它失去了它的 MIME 类型。有没有办法在新请求中准确复制上传文件的字节表示?
解决方案
推荐阅读
- elixir - Access.get/3 中没有匹配的函数子句
- flutter - Getx 不刷新值
- c++ - char 的 C 样式转换后的不同内存分配
- google-sheets - Google 表格:我可以删除公式中范围的最后一个条目吗?
- python - 如何在没有参考物体的情况下测量物体的距离?
- tensorflow - 致命错误:Python.h:没有这样的文件或目录#include
- java - Docker 容器中的文件 URI 断言失败
- python - VSCode Python 交互窗口,变量资源管理器
- laravel - 如何使用害虫 php laravel 为从数据库下载数据编写单元测试
- html - Bootstrap Input-Group with Spinner 给出了奇怪的旋转 D 形状