项目是前后端分离项目,后端用WEBAPI返回数据,后端需要配置什么吗?
图片附带UEditor官方demo,官方demo可以直接使用,但我不知道怎么添加到我的项目中
你是什么类型的项目,.net 还是 .net core
页面显示后端配置项没有正常加载,上传插件不能正常使用 给你这个插件,就是说你这个编辑器的上传地址配置的不正确,导致无法使用,检查下你的上传地址以及和官方的上传列子,看下返回的参数代码
本人第一次接触UEditor,还请大佬们讲仔细些,搞好了,可以再追加赏金
项目前端是VUE,后端是 asp.net webapi(不是core)
把配置文件中的serverUrl换成你后端提供的编辑器上传接口
以测试一下 php 代码是否正确执行,在浏览器打开 ueditor/controller.php 对应的路径,看看是否有下面的返回值。
{
state: "请求地址出错"
}
或者是
{"state":"\u8bf7\u6c42\u5730\u5740\u51fa\u9519"}
再访问 ueditor/php/controller.php?action=config 是否正常返回了json格式的后端配置内容,格式大致如下。
{
"imageUrl": "http://localhost/ueditor/php/controller.php?action=uploadimage",
"imagePath": "/ueditor/php/",
"imageFieldName": "upfile",
"imageMaxSize": 2048,
"imageAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"]
"其他配置项...": "其他配置值..."
}
官方文档指出,如果以上这两个请求出错,出现400、500等错误,编辑器上传相关的功能将不能正常使用。
那么接下来打开ueditor/php/controller.php文件,修改
$CONFIG = json_decode(preg_replace("//*[\s\S]+?*//", "", file_get_contents("config.json")), true);
修改成:
$CONFIG = json_decode(preg_replace("//*[\s\S]+?*//", "", file_get_contents($_SERVER['DOCUMENT_ROOT']."/ueditor/php/config.json")), true);
这是SSM整合ueditor中最经常遇到的问题,主要原因是springmvc在处理静态资源时错将/ueditor/jsp/下的controller.jsp文件当作静态资源处理了,从而导致文件上传组件不能正常使用。
这里有两种解决方案:
第一种是在配置静态资源时放过controller.jsp文件,该方法自行百度即可,很简单。
第二种修改config.json文件。找到/ueditor/jsp/下的config.json文件,打开在第11行,配置imageUrlPrefix属性值为你的服务器地址,例如我的服务器地址时http://locallhost:8080/,那么该属性配置如下:"imageUrlPrefix": "http://localhost:8080/",
下面我们解释下为什么要这么配置:在上边我们说了图片功能不能使用的主要原因时jsp文件被当作静态文件处理而导致的,但是在普通的web项目中就没有这个问题。这是因为在web.xml中我们引入springmvc时配置了这样的一段代码:
springmvc / 1 2 3 4 从而导致了我们的请求走springmvc框架,注意我们配置了过滤器,但是我们的编译器中并不在这个范围内,所以我们的请求不能被处理。最简单的办法就是强制性走springmvc框架,也就是我们上面配置的那句话。