作为Node脚本的一部分,我正在从API获取图像(特别是Microsoft Graph的配置文件图像)。
返回的响应的类型为'image / jpeg',响应主体包含一个字符串,我认为它是二进制的,看起来像这样:
����\u0000\u0010JFIF\u0000{snipped}ko{j챂�]Z�,3D�GG;��0\u0010���?���
因此,从其他堆栈溢出答案和在线资源中,我正在使用以下代码将其转换为base64数据URI,当节点服务器返回响应时,该URI最终可以嵌入到网页中:
const base64 = 'data:' + response.headers['content-type'] + ';base64,' +
new Buffer.from(response.body, 'binary').toString('base64');
这将返回一个编码的字符串,但是访问URI /尝试下载图像只会显示一个蓝色的问号,或下载损坏的图像。
但是我无法理解此过程中哪一步是错误的?