如何在Flask中从客户端向服务器发送PNG图像?

时间:2017-02-26 13:18:47

标签: ajax flask

我想将PNG图像从客户端发送到服务器。 我尝试使用ajax如下:

var saveImg = renderer.domElement.toDataURL();
$.ajax({
     type: "POST",
     contentType: "application/json",
     url: "/save_image",
     data: {"data":JSON.stringify(String(saveImg))},
     success: null
     });

renderer变量是一个three.js WebGLRenderer,生成的图像数据看似正确。

这给了我关于烧瓶服务器的数据作为POST请求,我按如下方式处理它:

@app.route("/save_image", methods=["GET","POST"])
def save_image():
    print(request.__dict__) # png data arrives as unusable string

数据作为不可用的字符串到达​​,无法通过例如二进制形式恢复到二进制形式。 bytesarray。我觉得我在做一些严重的错误。 但简单的

$.ajax({
                    type: "POST",
                    contentType: "image/png",
                    url: "/save_image",
                    data: saveImg
                });

根本没有到达服务器,即:

@app.route("/save_image", methods=["GET","POST"])
def save_image():
    print(request.__dict__) # no 'data' key/val pair arrived

我觉得应该有非常简单的方式来做,但我无法弄明白。欢迎提供相关文档的任何帮助/链接。

0 个答案:

没有答案