Angular Typescript 将文件转换为字符串($byte)

Angular Typescript convert file to string($byte)

我需要上传一个文件并使用 POST 方法将其作为 $byte 类型发送到端点

首先我将它转换为 base64,然后从那里转换为字节(我没有找到任何可以直接将其转换为字节的地方,所以也许我的观点是错误的)

代码在 StackBlitz 中: https://stackblitz.com/edit/angular-ivy-fya9mr?file=src%2Fapp%2Fapp.component.html,src%2Fapp%2Fapp.component.ts

谢谢!

无需转换。

文件输入元素的 files 属性 返回的值属于 File, which is actually a binary Blob 类型。您应该能够将其作为多部分表单数据直接发送到服务器:

saveImage(image: File): Observable<any> {
    const url = 'https://www.example.com/your-endpoint';

    const formData = new FormData();
    formData.append('image', image);

    return this.http.post<any>(url, formData);
}