【发布时间】:2017-04-09 09:48:16
【问题描述】:
我正在尝试在 JS(使用 cropit)和 Python(Flask) 中创建裁剪和调整大小工具
Cropit 返回裁剪图像的 base64,我通过 AJAX 将其发送到服务器,但无法保存。
阿贾克斯:
$.ajax({
type: 'GET',
url: '/api/saver',
data: 'file=' + imageData,
enctype: 'multipart/form-data',
processData: false, // Important!
contentType: 'application/json;charset=UTF-8',
cache: false,
success: function(msg){
console.log('Done')
}
});
在服务器端
@app.route('/api/saver/', methods=['GET', 'POST'])
def api_save_base64_image():
if request.method == 'GET':
file = request.args.get('file')
starter = file.find(',')
image_data = file[starter+1:]
image_data = bytes(image_data, encoding="ascii")
with open('.../image.jpg', 'wb') as fh:
fh.write(base64.decodebytes(image_data))
return 'ok'
return 'error
无异常返回,但 image.jpg 已损坏(空)。
如何通过 Flask 从客户端保存图像?
【问题讨论】:
-
检查你的base64!该代码适用于正确的数据
标签: javascript python ajax flask base64