百度UEditor上传图片-再总结一次

时间:2022-12-22 02:02:33

晚上,在继续开发BriefCMS,把百度UEditor上传图片的问题,给解决了,终于解决了。

公司极简版CMS、BriefCMS、个人官网,最近2个月,与百度UEditor厮杀了好久。最值得吐槽的,就是百度UEditor的上传图片功能,感觉不够简便。

百度UEditor官方,在JSP场景下的应用,太简单了。对我以前写的项目来说,还可以。

对于最近的3个项目来说,就不灵活了。

因为,图片存储、controller.jsp都不是存储在webapps目录下,不能直接访问,都需要做映射。

无论是JSP、图片等静态资源访问、config.json配置文件、Action等动态请求,关键的关键就是:后端服务器程序要能够响应。
JSP访问,后端响应;Action动态请求,后端照旧响应。这就是最简单的说法。

再总结一次百度UEditor的用法:

1. 在HTML、JSP、FTL等视图文件中,引入UEditor的JS和CSS,比如:

<script type="text/javascript" charset="utf-8"
src="${base}/theme/default/static/framework/ueditor/ueditor.config.js"></script>
<script type="text/javascript" charset="utf-8"
src="${base}/theme/default/static/framework/ueditor/ueditor.all.min.js"></script>
<script type="text/javascript" charset="utf-8"
src="${base}/theme/default/static/framework/ueditor/lang/zh-cn/zh-cn.js"></script>

2.ueditor.config.js中配置,获得config.json等图片上传等相关的URL,比如:
 , serverUrl: URL + "../../../ueditor/controller.jsp"

JSP也好,动态Action请求也好,后端响应它,返回给正确的config.json配置文件。

最坑的就是获得config.json这个文件,它的路径和config.js中的配置有严重的依赖关系。
如果想把图片存储到 非Webapp等硬盘目录,需要手动修改controller.jsp的rootPath。

3. 响应图片。
   不再Webapp目录下的,记得做映射。

灵丹妙药: 遇到问题的时候,根据错误提示,经过编码的,翻译成中文,就知道为什么了。实在不行,就debug程序,也不难,一般都是获得config.json的路径不对。debug一次,你就了解实际路径的生成规则了,然后你什么就懂了。

原文首发:http://fansunion.cn/article/detail/552.html