ueditor上传图片回调_springboot+mybatis+oss整合ueditor

今天项目的管理后台需要用到编辑器,之前有用到一款编辑器,叫做wangEditor,这款编辑器虽然接入是很快,给我的感觉就是傻白甜,但是他的编辑器的功能是比较少,后面又将编辑器改成了百度的ueditor,这块编辑器功能比较齐全(个人感觉),但是在接入的时候遇到了许多坑,看了官网的例子,但接入的过程还是有点坎坷,所以在此记录一下;

下载路径:http://ueditor.baidu.com/website/download.html

接入:我下载的是下图的版本:

1392d85dd777cd0493220ef8ccd02cd5.png

首先按照文档进行接入

1:在项目中引入文档的js

<!-- 配置文件 --><script type="text/javascript" src="ueditor.config.js"></script>
<!-- 编辑器源码文件 --><script type="text/javascript" src="ueditor.all.js"></script>

这里需要留一下,当出现语言类型的错误,就需要引入下面的js,否则就只需要引入上面的两个js;

<script th:src="@{/ueditor/lang/zh-cn/zh-cn.js}"></script>

2:根据demo我们需要定义一个编辑器的容器,用来展示编辑器,然后我们在js里面实例化这个编辑器:

  • 定义容器

<div id="editor" class="layui-form-item" lay-verify="editor" style="width: 600px">
</div>

99074287b5d44d1ba6e378ed75bdfb9d.png
  • 实例化编辑器,注意:这里如果ue.getEditor方法报错,很有可能是因为js文件没有引入成功,需要看看是不是拦截器把上面的两个js文件拦截了

7f7632e48d4aeaf5558cf4cf4f186d69.png

当执行完上述步骤,如果访问页面能够正常看到下图,则说明接入编辑器已经成功了90%;

29f1d74ca75234da8bf77ce50e34b41c.png

但是不要高兴太早,因为编辑器是不能缺少图片上传功能,当我们点击图片上传,这时候会发现在提示我们后端配置项没有正常加载,上传插件不能正常使用(如下图),这个时候我们需要配置一番

6bc9c2e663679779c35892420f8d9b3a.png

配置

  1. 1:打开ueditor文件夹下面的jsp,里面有个lib文件夹,这个里面有些jar包,如下图

7fa2a572b055124c3e5a29969569c122.png
  1. 2:我们只需要引入下面的坐标即可,如果项目中存在,无需再引

<!--UEditor依赖的jar包 -->

  1. <dependency>
  2. <groupId>commons-fileupload</groupId>
  3. <artifactId>commons-fileupload</artifactId>
  4. <version>1.3.1</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>commons-codec</groupId>
  8. <artifactId>commons-codec</artifactId>
  9. <version>1.9</version>
  10. </dependency>
  11. <dependency>
  12. <groupId>com.blingblingbang</groupId>
  13. <artifactId>ueditor</artifactId>
  14. <version>1.1.2</version>
  15. </dependency>
  16. <dependency>
  17. <groupId>commons-io</groupId>
  18. <artifactId>commons-io</artifactId>
  19. <version>2.4</version>
  20. </dependency>

这个时候我们需要打开/ueditor/jsp/controller.jsp,确认out.write是不是报错了,如果报错了,就说明jar包引的没有问题否则需要重新确认;

3cd62e19d27487b54a84bcd240a50093.png

然后我们需要重新写一个接口,让他重定向到 /ueditor/jsp/config.json 这个文件。把 ueditor/ueditor.config.js 中的服务器统一请求接口路径 更换为自己写的重定向接口(至于位为啥要这样,可以看看https://blog.csdn.net/pengdandezhi/article/details/81253904);

b2cd70cb14a0fb9aa93fe97a369d4b4a.png

打开/ueditor/ueditor.config.js,编辑serverUrl,将刚刚重写的接口路径写进去;

7b180defaf28c7535bdddc82360c60db.png

上传文件到oss

首先我们在页面实例化完成编辑器,还要做一个判断,当它上传图片时让它直接访问自己写的上传接口 如下图:

4ebcd28641661dec6f614e1f1aabc4ea.png

上图uEditorUploadFile是oss文件上传的接口,需要后台自己定义

efabf02f3e72cfe98afd2dc484cc5b9a.png

这里要注意:file这个参数名称是要在/ueditor/jsp/config.json里面配置的,如下图

4d9dad63c878fff4add8153aa63178e2.png
上图注释出来的一个是接口接受的文件参数名称,另一个图片回显的访问路径前缀

访问路径前缀之所以是"",是因为oss将图片上传上去以后是全路径访问,不需要配置什么,所以这里就是"";

最后就可以尽情的使用编辑器了

205f8009de4064bdc2cae5d376122ce7.png

最后我们要注意一下:在ueditor.all.js 24518行要注意这两行,第一个:oss文件上传接口需要返回json,参数名称为state,url;第二个:需要按照第二个框起来的地方去改,其中删除domUtils.removeClasses下面的代码,然后加入me.execCommand();不然上传图片可能会出现上传错误;

7ed17fdcb9f671e8306d9b5315f148c7.png

最后:需要注意:可能会出现上传图片的顺序会出现顺序被打乱的现象,跟设置宽高;这个可以自行百度;

end

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值