Я пытался реализовать простой API REST Flask, который бы принимал файл Excel и сохранял его в каталоге.
Ниже приведен фрагмент, который я использую
from flask import Flask, jsonify
from flask import abort
from flask import make_response
from flask import request
from werkzeug.utils import secure_filename
import os
app = Flask(__name__)
@app.route('/tasks/add', methods=['POST'])
def add_xlsx():
file = request.files['ciq_file']
if not file:
return jsonify({'error' : 'File is empty!'})
fl_secure = secure_filename(file.filename)
file.save('/data/prabir/t/testnew.xlsx', fl_secure)
return jsonify({'status' : 'success'})
Но, когда я пытаюсь вызвать эту службу, она выбрасывает TypeError: an integer is required
(venv) [xyx@xyz t]$ curl -F 'ciq_file=@/data/prabir/somefile.xlsx' http://localhost:5000/tasks/add
Сбой команды Curl со следующей ошибкой:
File "/data/prabir/t/app.py", line 35, in add_xlsx
file.save('/data/prabir/t/testnew.xlsx', fl_secure)
File "/data/prabir/venv/lib/python2.7/site-packages/werkzeug/datastructures.py", line 2803, in save
copyfileobj(self.stream, dst, buffer_size)
File "/data/TRpython/lib/python2.7/shutil.py", line 63, in copyfileobj
buf = fsrc.read(length)
File "/data/TRpython/lib/python2.7/tempfile.py", line 605, in read
return self._file.read(*args)
TypeError: an integer is required
Яне могу понять, что может быть потенциальной ошибкой, которую я делаю. Любая помощь будет оценена.