我正在尝试使用javascript中的原始数据创建jpeg文件
我一直在使用google文件选择器api来允许用户从驱动器中选择图像并将其导入到我的应用程序中,但是当我发出下载图像的请求时,google会以如下所示的原始数据进行响应:>
我曾尝试通过以下方式将这些数据放入Blob:
var blob = new Blob([res.text], {type: 'image/jpeg'})
我还尝试过将数据放入文件中。
var file = new File([res.text], 'image.jpeg', {type:"image/jpeg"})
但是,该文件仅呈现黑色像素。如何从该数据生成jpeg文件,以便可以将其上传到服务器?
更新(解决方案): 我将请求api切换为访存并在响应中使用.blob()
答案 0 :(得分:0)
有关超级代理,请参见http://visionmedia.github.io/superagent/#parsing-response-bodies->二进制文件和http://visionmedia.github.io/superagent/#response-properties->响应正文。
您需要使用.responseType('blob')
和res.body
。
https://stackblitz.com/edit/js-so-how-to-process-raw-jpeg-data-into-a-file-in-javascript