🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ## 问题集锦 ### 1、Ueditor上传图片,服务器返回成功,提示上传错误 在使用ueditor过程中,使用AJAX加载Ueditor,发现上传图片服务端返回json 正常,ueditor却提示上传错误 请检查这个富文本编辑器上传成功后是怎么处理的.....看返回感觉你的服务器是没问题的,有很大的原因就是你这个富文本插件js在处理返回值的时候返回的和js需要的不一样造成的,请检查一下插件。 原文:https://segmentfault.com/q/1010000008126210?_ea=1559881 ### 2、[Ueditor] 上传图片成功,但是提示上传失败 #### 问题排除 查找图片发现上传的图片已经上传于服务器,因为不是图片上传的问题 浏览器F12开发者模式查看发现/php/controller.php?action=uploadimage报502错误 逐步断点排查发现如果注释掉iconv('unicode', 'utf-8', $this->stateMap['ERROR_TYPE_NOT_ALLOWED'])代码之后问题消失。图片可以正常上传 #### 问题原因 可能是iconv函数运行时抛出错误导致 #### 问题解决办法 ueditor的github上面已经更新了代码,但是最新版的ueditor的源码中的代码还没有更新。 ``` 将 iconv('unicode','utf-8',$this->stateMap['ERROR_TYPE_NOT_ALLOWED']) 替换为 mb_convert_encoding($this->stateMap['ERROR_TYPE_NOT_ALLOWED'],'utf-8','auto') ``` ### 原文阅读 https://www.jianshu.com/p/5afc7aaa4bac ### 3、ueditor 图片上传时,服务端返回正确仍然显示上传错误 在使用ueditor过程中 发现上传图片服务端返回json 正常,ueditor却提示上传错误 研究了两天终于找到答案了 从这个图上看到返回json是正确,我将ueditor.all.min.js 里面的这段 ``` {try{var e,g,k,h=(r.contentDocument||r.contentWindow.document).body;g=(new Function("return "+(h.innerText||h.textContent||"")))();e=b.options.imageUrlPrefix+g.url;"SUCCESS"==g.state&&g.url?(k=b.document.getElementByIdx_x(d),k.setAttribute("src",e), k.setAttribute("_src",e),k.setAttribute("title",g.title||""),k.setAttribute("alt",g.original||""),k.removeAttribute("id"),f.removeClasses(k,"loadingclass")):c&&c(g.state)}catch(n){c&&c(b.getLang("simpleupload.loadError"))}u.reset();f.un(r,"load",a)} ``` 修改成​ ``` {var e,g,k,h=(r.contentDocument||r.contentWindow.document).body;g=(new Function("return "+(h.innerText||h.textContent||"")))();e=b.options.imageUrlPrefix+g.url;"SUCCESS"==g.state&&g.url?(k=b.document.getElementByIdx_x(d),k.setAttribute("src",e), k.setAttribute("_src",e),k.setAttribute("title",g.title||""),k.setAttribute("alt",g.original||""),k.removeAttribute("id"),f.removeClasses(k,"loadingclass")):c&&c(g.state);u.reset();f.un(r,"load",a)} ``` 出现了 Error: Permission denied to access property "document" 这个错误,这是跨域啊,打开域名是jyblc.cn/xxx/xxx serverUrl www.jyblc.cn/xxx/xxx ,原来加了www后就算是二级域名了,就算是跨域了,习惯思维误导。写成相对路径就解决了 不管用户是www.jyblc.cn 打开还是jyblc.cn 打开都可以 原文阅读: [春暖花开的博客](http://blog.sina.com.cn/s/blog_722a79c60102wbjr.html)