JS 使用 canvas 压缩图片后,生成的 blob 文件,上传到后台取不到文件的 originalFilename 信息

input的files[0] 能取到 filename和originalFilename

但压缩过后就没办法取到了

阅读 6.4k
3 个回答

图片经过canvas压缩之后,你拿到的只是文件本身,没有任何名字信息的。你可以在提交时,添加一个字段,把名字传给后台就行了;

var formdata = new FormData();
formdata.append('0', blod);
formdata.append('filename', file.filename);
formData.append(name, value);
formData.append(name, value, filename);

formData append方法有第三个参数,用来给自己构造的 blob 设定 filename。filename 参数安卓4.x某些设备有兼容性问题。

MDN API

可以看下我总结的关于图片上传这块的内容,希望对你有用。

链接请戳我

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