解决UEditor后端配置项没有正常加载,上传插件不能正常使用!

解决UEditor后端配置项没有正常加载,上传插件不能正常使用!

UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码。

  1. 在http://ueditor.baidu.com/website/download.html下载1.4.3.3完整源码,解压到ueditor-1.4.3.3文件夹,然后把ueditor-1.4.3.3/jsp/src下com文件夹复制到项目中,ueditor-1.4.3.3/jsp/lib下(除了ueditor-1.1.2.jar)jar包配置到pom文件中。
  2. 找到com.baidu.ueditor.ConfigManager类,163行String configContent =ueditor-1.4.3.3/jsp/config.json里面的内容。
    本人直接把里面的内容转成字符串放这里了
  3. 创建ueditor后台控制器controller方法:参考ueditor-1.4.3.3/jsp/controller.jsp中的代码写到后台接口中。
@Controller
@RequestMapping("/ueditor")
public class UeditorController {
@RequestMapping("/controller")
    public void controller(HttpServletRequest request,HttpServletResponse response,MultipartFile upfile){
	response.setContentType("application/json");
        String rootPath = Global.getUploadPath();
        try {
	request.setCharacterEncoding("utf-8");
            String exec = null;
            if (null != upfile && upfile.getSize() > 0) {
            //保存附件到本地的方法,返回保存路径
            String path = FileUploadUtils.upload("保存的文件夹路径", upfile);
    		State storageState = new BaseState(true);
    		storageState.putInfo("url", path);
    		storageState.putInfo("type", FileType.getSuffixByFilename(path));
    		storageState.putInfo("title", upfile.getOriginalFilename());
    		storageState.putInfo("original", upfile.getOriginalFilename());
    		exec = storageState.toJSONString();
            } else {
            	exec = new ActionEnter(request, rootPath).exec();
            }
            PrintWriter writer = response.getWriter();
            writer.write(exec);
            writer.flush();
            writer.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
  1. 在ueditor.config.js文件中修改后台服务器路径
serverUrl: "/ueditor/controller"

此方法只是简单的配置了上传功能的方法,后台并没有做对文件大小及类型等操作做校验,可自行对源码进行修改及扩展。

你可能感兴趣的:(UEditor,编辑器)