图片url转换为base64 js
时间: 2024-09-28 19:05:43 浏览: 29
js base64编码格式图片另存为下载
5星 · 资源好评率100%
在JavaScript中,将图片URL转换为Base64编码通常是为了在网络请求中避免直接发送原始图片文件。这可以通过`FileReader` API来完成。以下是一个简单的示例:
```javascript
function urlToBase64(url) {
return new Promise((resolve, reject) => {
const img = new Image();
img.src = url;
img.onload = function() {
const canvas = document.createElement('canvas');
const ctx = canvas.getContext('2d');
canvas.width = this.width;
canvas.height = this.height;
ctx.drawImage(this, 0, 0);
const dataUrl = canvas.toDataURL('image/jpeg'); // 可以换成 'image/png', 或者根据图片类型设置
resolve(dataUrl.replace(/^data:image\/(jpeg|png);base64,/i, ""));
};
img.onerror = reject;
});
}
// 使用示例
urlToBase64('your-image-url.jpg')
.then(base64Data => console.log('Image as Base64:', base64Data))
.catch(error => console.error('Failed to convert image:', error));
```
在这个例子中,我们首先创建了一个`Image`对象加载图片,然后在图片加载成功后绘制到`canvas`上,再将`canvas`转换为Base64数据。记得替换`'your-image-url.jpg'`为你需要转换的实际图片URL。
阅读全文