cheyuheng 2023-02-14 14:44 采纳率: 28.6%
浏览 13

ueditor上传文件下载出错

问题遇到的现象和发生背景

ueditor上传附件,到前端下载的时候如果以原文件名保存并且存在中文,就会报错404,找不到源文件

操作环境、软件版本等信息

ueditor1_4_3_3-utf8-jsp

我想要达到的结果

文件名存在中文的时候可以正常下载

  • 写回答

2条回答 默认 最新

  • zmy1127 2023-02-15 10:05
    关注

    这个问题可能与服务器配置或者UEditor自身的设置有关。可能是服务器没有设置支持中文文件名的编码,也可能是UEditor的文件名编码设置不正确。

    以下是一些可能的解决方法:

    1.在UEditor中修改上传附件的配置,将encoding参数设置为UTF-8。在config.json文件中,找到"fileManagerAllowFiles"、"catcherAllowFiles"、"videoAllowFiles"、"imageManagerAllowFiles"、"fileAllowFiles"等参数,将其中的"中文"替换成对应的UTF-8编码。例如,"fileAllowFiles": [".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".pdf", ".zip", ".rar", ".gz", ".bz2", ".tar", ".htm", ".html", ".txt", ".mp3", ".mp4", ".wma", ".avi", ".wmv", ".swf"] 可以修改为 "fileAllowFiles": [".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".pdf", ".zip", ".rar", ".gz", ".bz2", ".tar", ".htm", ".html", ".txt", ".mp3", ".mp4", ".wma", ".avi", ".wmv", ".swf"]。

    2.将服务器的编码设置为支持中文文件名的编码。例如,可以将服务器的编码设置为UTF-8,或者其他支持中文文件名的编码。

    3.在文件下载的时候,将中文文件名进行URL编码。例如,可以使用JavaScript的encodeURI()方法将文件名进行编码。在下载文件时,前端可以通过JS的window.open()或location.href方法进行下载,如:window.open(encodeURI('/path/to/file/中文文件名.docx'))。

    希望以上解决方案可以帮助到您。

    评论

报告相同问题?

问题事件

  • 创建了问题 2月14日

悬赏问题

  • ¥15 单纯型python实现编译报错
  • ¥15 c++2013读写oracle
  • ¥15 c++ gmssl sm2验签demo
  • ¥15 关于模的完全剩余系(关键词-数学方法)
  • ¥15 有没有人懂这个博图程序怎么写,还要跟SFB连接,真的不会,求帮助
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音