Angular 10+将base64图像转换为表单数据的方法如下:
function base64ToBlob(base64: string, type: string): Blob {
const byteCharacters = atob(base64);
const byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += 512) {
const slice = byteCharacters.slice(offset, offset + 512);
const byteNumbers = new Array(slice.length);
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
return new Blob(byteArrays, { type: type });
}
function blobToFormData(blob: Blob): FormData {
const formData = new FormData();
formData.append('image', blob, 'image.png');
return formData;
}
import { HttpClient } from '@angular/common/http';
// ...
constructor(private http: HttpClient) {}
uploadImage(base64Image: string) {
const blob = base64ToBlob(base64Image, 'image/png');
const formData = blobToFormData(blob);
this.http.post('https://example.com/upload', formData).subscribe(
response => {
console.log('Image uploaded successfully');
},
error => {
console.error('Failed to upload image');
}
);
}
以上代码将base64图像数据转换为表单数据,并使用HttpClient模块将其发送到服务器。请注意,需要将https://example.com/upload
替换为实际的服务器端点。
推荐的腾讯云相关产品:腾讯云对象存储(COS)。
腾讯云对象存储(COS)是一种高可用、高可靠、强安全的云端存储服务,适用于存储和处理任意类型的文件,包括图像、音视频、文档等。您可以使用腾讯云对象存储(COS)来存储和管理您的图像文件,并通过API进行上传和下载操作。
产品介绍链接地址:腾讯云对象存储(COS)
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云