Postされた画像データをflask上で受け取るには

Javascript

$('#classify_upload').click( function() {
	canvas = $('.container > img').cropper('getCroppedCanvas');
	$('<form/>', {action: 'classify_upload', method: 'post', enctype:'multipart/form-data'})
	  .append($('<input/>', {type: 'hidden', name: 'imagefile', value: canvas.toDataURL('image/png')}))
	  .appendTo(document.body)
	  .submit();
});

Flask

import re
import cStringIO
from PIL import Image

@app.route('/classify_upload', methods=['POST'])
def classify_upload():
    try:
        image_data = re.sub('^data:image/.+;base64,', '', flask.request.form['imagefile']).decode('base64')
        imagefile = Image.open(cStringIO.StringIO(image_data))

情報源: python – Decoding base64 from POST to use in PIL – Stack Overflow

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です