百度编辑器是一款非常优秀的开源在线的html编辑器.
但由于历史悠久,提供的sdk源码不能使用composer安装,也不支持cli模式.更不支持swoole协程环境了.
所以本人根据百度编辑器的代码,写出了一个可以在cli,easyswoole环境下使用的composer包.
地址: https://github.com/easy-swoole/u-editor
安装方法:
composer require easyswoole/u-editor
该组件只支持easyswoole环境,如果需要支持其他swoole环境,需要自行修改
使用方法
新增一个控制器,继承EasySwoole\UEditor\UEditorController
.
<?phpnamespace App\\HttpController;use EasySwoole\\Http\\AbstractInterface\\Controller;use EasySwoole\\UEditor\\UEditorController;class UEditor extends UEditorController{ }
该控制器请求地址为:/UEditor
修改百度编辑器ueditor.config.js
=>window.UEDITOR_CONFIG
=>serverUrl=URL + "/UEditor"
如图
即可直接使用.
补充说明
百度编辑器前端初始化后,会通过ueditor.config.js
获取配置,通过获取到的服务器路径,请求格式为:
服务器路径+"?action=操作方法".例如: http://127.0.0.1:9501//UEditor?action=config&&noCache=1587973402520
前端请求之后,将通过UEditorController
的index方法进行识别action,转发到不同的请求逻辑上,实现百度编辑器的后端接口.
自定义使用方法.
在EasySwoole\UEditor\UEditorController
控制器中,有着默认的实现方法,如果你需要修改配置,可通过重写控制器方法进行修改.
保存路径
默认保存路径为EASYSWOOLE_ROOT . '/Static'
.可通过属性继承$rootPath
修改属性修改.
权限控制实现
本组件默认控制器实现继承为EasySwoole\Http\AbstractInterface\Controller
,如果你有需要登录用户上传等权限验证的需求,可以直接复制EasySwoole\UEditor\UEditorController
里面的代码,重写继承,重写控制器方法