Javascript 如何删除数据:图像/png;base64中的base64,然后通过axios post在ReactJs中上载到api服务器
正在从中获取base64输出 我的更新代码Javascript 如何删除数据:图像/png;base64中的base64,然后通过axios post在ReactJs中上载到api服务器,javascript,reactjs,axios,base64,Javascript,Reactjs,Axios,Base64,正在从中获取base64输出 我的更新代码 getCroppedImg(image, crop) { const canvas = document.createElement('canvas'); const scaleX = image.naturalWidth / image.width; const scaleY = image.naturalHeight / image.height; canvas.width = c
getCroppedImg(image, crop) {
const canvas = document.createElement('canvas');
const scaleX = image.naturalWidth / image.width;
const scaleY = image.naturalHeight / image.height;
canvas.width = crop.width;
canvas.height = crop.height;
const ctx = canvas.getContext('2d');
ctx.imageSmoothingQuality = 'high';
ctx.drawImage(
image,
crop.x * scaleX,
crop.y * scaleY,
crop.width * scaleX,
crop.height * scaleY,
0,
0,
crop.width,
crop.height
);
return new Promise((resolve, reject) => {
canvas.toBlob(blob => {
resolve(canvas.toDataURL());
}, 'image/jpeg');
});
}
如何删除此数据:图像/png;base64,在ReactJs中
任何帮助都将不胜感激,谢谢
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAgAElE..."
您可以使用以下代码删除
数据:image/png;base64
部分:
var base64 = string.split(',')[1];
您可能不想从base64中删除该标头信息,如果没有它,未来的客户端可能无法正确解析并显示base64字符串
实际上,“头”类型信息非常重要,用于通知浏览器/客户端图像mime类型、编码等。。。查看更多详细信息。我可以在哪里使用此代码?为什么要删除提到的元数据。请参考以下链接,了解图像是如何通过浏览器呈现的)。我要删除的原因是服务器正在抛出错误响应消息-“消息”:“输入不是有效的Base-64字符串,因为它包含非Base-64字符,我在postman中尝试了它,但没有标题信息,获得了成功响应”picture saved“我想删除的原因是服务器正在抛出错误响应消息—“message”:“输入不是有效的Base-64字符串,因为它包含非Base-64字符。我在postman中尝试了它,没有标题信息,获得了成功响应”picture saved“,我明白了,在这种情况下,您很可能遇到了编码问题,在这里查看Jim Mischel的答案,它不起作用,react中的任何示例代码都会有帮助哦,您需要在服务器端解决编码问题。