我正在寻找将图像数据从canvas标签流式传输到node.js服务器。我自己可以处理服务器端代码,但是如何从画布提交数据呢?我希望有一个涉及多部分表单数据的建议,因为我想要流式传输数据,因为我期待大约50 MB左右的图像。如果我尝试一次性发布数据,则会导致客户端的浏览器崩溃。
答案 0 :(得分:7)
您可以使用FormData
模拟正常的"multipart/form-data"
文件提交:
canvas.toBlob( function(blob) {
var formData = new FormData();
formData.append("image_file", blob );
var xhr = new XMLHttpRequest;
xhr.open( "POST", "abc.php" );
xhr.send(formData);
}, "image/png");
画布方法.toBlob
是specified但未实现,您可以使用polyfill
例如canvas-to-blob.js