【问题标题】:Save and load image from client to server with django使用 django 将图像从客户端保存并加载到服务器
【发布时间】:2014-06-27 10:01:08
【问题描述】:

这是我从客户端发送数据的方式(coffeescript & dajaxice):

imageData = canvas.toDataURL("image/png")
Dajaxice.draw.saveImage( @saveImage_callback, {'image': imageData } )

这是我在服务器上保存图像的方法(取自this answer

@dajaxice_register
def saveImage(request, image):

   imageData = re.search(r'base64,(.*)', image).group(1)
   output = open('image.png', 'wb')
   output.write(imageData.decode('base64'))
   output.close()

我想加载图像并像这样发送:

inputfile = open('image.png', 'rb')
imageData = inputfile.read().encode('base64')
inputfile.close()
return simplejson.dumps( { 'image': imageData } )

但这并没有给我完全相同的数据,而且我的客户无法绘制返回的图像。 imageData 在我写的时候以2OWn9u2 结尾,在我读的时候以2OWn 结尾(缺少'9u2')。

【问题讨论】:

    标签: django encoding client-server todataurl


    【解决方案1】:

    好的,数据的差异不是问题,它可以工作。这是我在客户端上绘制返回图像的方式:

    saveImage_callback: (result)=>
        imageData = 'data:image/png;base64,'+result.image
        image = new Image()
        image.src = imageData
        canvas.getContext("2d").drawImage(image, 300, 300, 300, 300)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-09
      相关资源
      最近更新 更多