express返回的图片数据是乱码

前台去请求下载一张图片,后端通过res.download下载,返回给前台的data是乱码

data:����JFIFHH��C↵↵↵%# , #&')*)-0-(0%()(��C↵↵↵↵(((((((((((((((((((((((((((((((((((((((((((((((((((��������>..
rrMsg:"request:ok"
header:
Accept-Ranges:"bytes"
Cache-Control:"public, max-age=0"
Connection:"keep-alive"
Content-Disposition:"attachment; filename="1525056024543.jpg""
Content-Length:"10963"
Content-Type:"image/jpeg"
Date:"Mon, 30 Apr 2018 12:40:48 GMT"
ETag:"W/"2ad3-163146c2fee""
Last-Modified:"Mon, 30 Apr 2018 02:40:24 GMT"
X-Powered-By:"Express"
__proto__:Object
statusCode:200
__proto__
:
Object
阅读 5.3k
2 个回答

下载文件别用ajax,用window.open(url),或者window.location.href=url
如果是下载的请求是post,可以给document添加form来实现

之前回答过类似的问题,后端给你返回的是二进制的jpg文件,可以看到乱码里的“JFIF”很显眼,那是JPEG格式的文件头。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏