Javascript 转账申请';s文件从API到API:NestJS(HttpService:Axios)到Python(flask)
我正在尝试将文件从NestJSAPI传输到Python Flask API 此过程将由嵌套API上的POST请求(FormData:file)触发。然后,嵌套api应该将该文件发送到Python api nestJS的HttpService使用Axios。所以我的目标基本上是从NodeJS用axios发送文件 FormData在节点JS上不可用,因此我已安装 python Python代码,我认为它工作正常,因为邮递员请求通过时没有任何问题Javascript 转账申请';s文件从API到API:NestJS(HttpService:Axios)到Python(flask),javascript,node.js,flask,axios,nestjs,Javascript,Node.js,Flask,Axios,Nestjs,我正在尝试将文件从NestJSAPI传输到Python Flask API 此过程将由嵌套API上的POST请求(FormData:file)触发。然后,嵌套api应该将该文件发送到Python api nestJS的HttpService使用Axios。所以我的目标基本上是从NodeJS用axios发送文件 FormData在节点JS上不可用,因此我已安装 python Python代码,我认为它工作正常,因为邮递员请求通过时没有任何问题 @app.route('/route',methods
@app.route('/route',methods=['POST'])
def user():
params_data=json.load(request.files.get('file'))
返回“OK”
内斯特
在nest方面,我尝试了很多东西
但主要思想如下:
将formData.getHeaders用作axios标头,并将数据放入axios配置中
app.controller.ts
@Post()
上载文件(@Req()请求:请求){
//请求是明确的请求
const formData:any=new formData();
让新文件;
if(request.hasOwnProperty('file')){
newFile=(请求为任意).file;//这正在工作
}
append('file',newFile.buffer,'filename');
返回此.appService.launchOptim(formData);
}
app.service.ts
公共启动Optim(modelData:FormData){
常量axiosConfig:AxiosRequestConfig={
headers:modelData.getHeaders(),
数据:模型数据,
};
返回此.http.post('http://localhost:5000/route,modelData,axioconfig)
.pipe(map(result=>result.data));
}
然后,使用该配置,python代码中的request.files
始终保持为空
如何使用axios将请求文件正确传输到另一个api
有关此主题的问题:
我也试过这个
嘿,雨果,你有没有试过让它工作起来?我有一个类似的要求。。。虽然对我来说,我不控制其他API。我们使用了另一种解决方案。对此我无能为力,抱歉:'(这个例子很有用,但可能需要一些信息。你能否专门编辑你的帖子,说明提问者需要做哪些改变才能完成这项工作,以便他们(以及最终解决这个问题的未来人)能够更好地理解最终用户出了什么问题?
@Post()
@UseInterceptors(FileInterceptor('file'))
uploadFile(@Req() request: Request, @UploadedFile() file,) {
var FormData = require("form-data");
const formData = new FormData();
formData.append('file', file.buffer, { filename: file.originalname });
const headers = {
...formData.getHeaders(),
"Content-Length": formData.getLengthSync()
};
await axios.post(requestAPI, formData, { headers });
}