JavaScript - 将图像作为二进制数据发送到服务器
JavaScript - send image to server as binary data
我有一个图像对象
var ctx = canvas.getContext('2d');
ctx.drawImage(imageBitmap, 0, 0);
var imgData=ctx.getImageData(0,0,W,H);
我现在如何使用 POST 方法将 imgData
作为二进制数据(或字符串)传递给服务器?
首先,你必须得到图像的字节数组。很简单:
let bytes = imgData.data
然后,向服务器发送字节。也很简单:
fetch('https://example.net/',{method: 'POST', body: bytes}).then((res) => ...)
但是,事实上,他们很少有服务器接收原始图像数据。现实中发送jpeg压缩、base64编码等处理后的数据
我有一个图像对象
var ctx = canvas.getContext('2d');
ctx.drawImage(imageBitmap, 0, 0);
var imgData=ctx.getImageData(0,0,W,H);
我现在如何使用 POST 方法将 imgData
作为二进制数据(或字符串)传递给服务器?
首先,你必须得到图像的字节数组。很简单:
let bytes = imgData.data
然后,向服务器发送字节。也很简单:
fetch('https://example.net/',{method: 'POST', body: bytes}).then((res) => ...)
但是,事实上,他们很少有服务器接收原始图像数据。现实中发送jpeg压缩、base64编码等处理后的数据