本人项目场景:
后台系统是java编写使用Ueditor编辑器来上传附件,而前台网站是另一个展示系统,用来展示后台上传的文件列表信息。
问题1:如果不登录后台系统,前台的文件展示的图标会查询不到。并且通过浏览器调试发现:后台图标的路径也是图标所在机器的绝对路径,这并不安全。
问题2:在问题1解决的前提下,有些文件格式的图标显示不正确,例如.xlsx显示成了.txt的图标。
=============
解决方法:
1,图标获取不到可能是因为,后台项目不允许在未登录的时候,获取其目录下的文件,过滤掉了。这时,我们可以将Ueditor的这些图标放在前台系统的目录下。然后针对绝对路径不安全的问题,我们可以使用前台网站的域名作为访问路径的前半部分,结合图标存放路径,去读取这些图标。这时我们需要修改一个ueditor.all.js,找到 iconDir = URL + (URL.substr(URL.length - 1) == '/' ? '':'/') + 'dialogs/attachment/fileTypeImages/';把这句改成iconDir = "http://域名/项目下的路径/";例如iconDir = "http://域名/Public/images/";
2,问题2:也是需要修改这个js.这是因为, 这个maps里面的键值对,可能不包含你的那个文件类型,如果找不到,根据js,会默认是txt的图标。这时我们可以添加你需要的文件扩展名和对应的图标,即可解决问题。