如何将 pdf 文件从 Flask 发送到 ReactJS

How to send a pdf file from Flask to ReactJS

如何将文件从 Flask 发送到 ReactJS?

我已经在前端编写了代码,用户上传一个文件,然后该文件转到 Flask 服务器,然后在 Flask 服务器中修改文件,但我被困在那里...

下一步是我要发送 flask 服务器中的“修改文件”并在前端 ReactJS 中接收它,以便用户可以下载“修改文件”

比如这个是修改文件flask函数

#modify the file
@app.route("/convertor", methods=['POST'])
def convertor():
    files = request.files
    #file = files.get('file').read()
    file_name = files.get('file')

    print(file_name.filename)

    # Convert img to pdf
    img1 = Image.open(file_name)
    img = img1.convert('RGB')
    img.save(os.path.abspath(f'Backend/{file_name.filename}.pdf'))

我知道它需要 return 东西,我如何 return 文件并在 ReactJS 中接收它然后下载它?

有什么想法吗?

您必须暂时在单独的目录中下载上传的文件,然后

  1. return 该文件的 url 到您的 React 前端
  2. 创建一个新函数以从临时目录中删除该文件
@app.route("/remove_file/<file_id>", methods=['DELETE'])
def remove_file(file_id):
    if (os.path.isFile('your_temp_directory/' + file_id)):
       os.remove('your_temp_directory/' + file_id)

编辑: 您可以使用 Wget python 包

从上传的文件内容中下载
wget [options eg. multiple files, download speed etc.] -0 dir/path file_url