关于editor网页编辑器ueditor.config.js 配置图片上传
最近公司項(xiàng)目在做一個(gè)門戶網(wǎng)站,其中新聞和簡(jiǎn)介等部分使用到了ueditor編輯器,但是上級(jí)明確指示需要圖片上傳這個(gè)功能,這時(shí)卻發(fā)現(xiàn)圖片上傳功能不能正常使用,上傳時(shí)一直報(bào)錯(cuò),網(wǎng)上收了好幾個(gè)處理辦法,都說的不夠詳細(xì)明了,突然發(fā)現(xiàn)ueditor這么強(qiáng)大的工具在開發(fā)過程中的致命盲點(diǎn),很糾結(jié),最終經(jīng)過很久的糾結(jié)和苦思冥想終于解決了該問題,以下是關(guān)于ueditor 在web 2.0版本下的問題解決思路和方法,因?yàn)榻?jīng)過測(cè)試 網(wǎng)上下載的ueditor編輯器在4.0下 問題不大。好了言歸正傳,首先亮出ueditor在我的項(xiàng)目的結(jié)構(gòu)位置:
,這里先說明一下 標(biāo)示的這些地方的作用,紅框標(biāo)示的是Ueditor整個(gè)文件的位置,紅線標(biāo)示的 是 配置過程中將會(huì)用到的各部分,接下來會(huì)一一講解。接下來在亮出原始版本ueditor結(jié)構(gòu)位置:
原始版本ueditor是不能正常上傳圖片的,之所以曬出這兩張圖片是為了更好的進(jìn)行對(duì)比 找出 問題所在,便于分析 你的問題出在哪里。首先問題可以很明確的是程序編譯沒有通過,你按F6進(jìn)行編譯他提示生成成功,其實(shí)不然,接下來我們就來分析哪些地方造成的編譯沒有通過
我們先從上面帶星號(hào)這個(gè)類開始講:請(qǐng)看以下圖片:,如果不出意外,你正在有這樣的疑問,這個(gè)錯(cuò)誤是怎么產(chǎn)生的,因?yàn)槲夷菚r(shí)就糾結(jié)了很久,如果你細(xì)心的話你會(huì)發(fā)現(xiàn)第一張圖片中該文件已經(jīng)改名為UploaderFile,這是當(dāng)時(shí)最先想到的解決辦法,以為改個(gè)名字就能解決 該報(bào)錯(cuò)原因,結(jié)果我錯(cuò)了,(當(dāng)然改了名字也不影響),那么問題出在哪里呢?其實(shí)問題出在頭部引用紅線位置就是問題所在,2.0是不支持Linq的 所以 這句要?jiǎng)h掉,同時(shí)引用Linq的還有Config.cs 然后就是上面兩句話,可以看出下面一句話已經(jīng)在報(bào)錯(cuò)了,這句話為何報(bào)錯(cuò)?因?yàn)榭闯绦蚪Y(jié)構(gòu)你可以看出Config.cs類和Uploader.cs類本來就在同一個(gè)項(xiàng)目中,這里在處理程序中再次引用就相當(dāng)于原本就編譯了,再編譯一次,所以提示同時(shí)存在于.....兩個(gè)地方,而為何4.0不報(bào)錯(cuò),我想應(yīng)該是4.0在升級(jí)后處理了這個(gè)邏輯吧!這三句話都必須刪掉
接下來我把imageUp.ashx的代碼貼出來,只要你是ueditor1_3_5-utf8-net這個(gè)版本 就沒有問題。
1 <%@ WebHandler Language="C#" Class="imageUp" %> 2 using System; 3 using System.Web; 4 using System.IO; 5 using System.Collections; 6 7 public class imageUp : IHttpHandler 8 { 9 public void ProcessRequest(HttpContext context) 10 { 11 context.Response.ContentType = "text/plain"; 12 13 //上傳配置 14 int size = 2; //文件大小限制,單位MB //文件大小限制,單位MB 15 string[] filetype = { ".gif", ".png", ".jpg", ".jpeg", ".bmp" }; //文件允許格式 16 17 18 //上傳圖片 19 Hashtable info = new Hashtable(); 20 Uploader up = new Uploader(); 21 22 string pathbase = null; 23 int path=Convert.ToInt32( up.getOtherInfo(context, "dir")); 24 if (path == 1) 25 { 26 pathbase = "upload/"; 27 28 }else{ 29 pathbase = "upload1/"; 30 } 31 32 info = up.upFile(context, pathbase, filetype, size); //獲取上傳狀態(tài) 33 34 string title = up.getOtherInfo(context, "pictitle"); //獲取圖片描述 35 string oriName = up.getOtherInfo(context, "fileName"); //獲取原始文件名 36 37 38 HttpContext.Current.Response.Write("{'url':'" + info["url"] + "','title':'" + title + "','original':'" + oriName + "','state':'" + info["state"] + "'}"); //向?yàn)g覽器返回?cái)?shù)據(jù)json數(shù)據(jù) 39 } 40 41 public bool IsReusable 42 { 43 get 44 { 45 return false; 46 } 47 } 48 49 }?,接下來在看web.config文件,原始的文件時(shí)這樣的:,其實(shí)這個(gè)文件 在整個(gè)問題中沒有太大影響(也就是說不會(huì)影響圖片上傳),但是為何又要單獨(dú)講一下呢?因?yàn)樵谙逻@個(gè)虧吃的有點(diǎn)大,該文件中targetFramework="4.0"這句話 誤導(dǎo)了我,以至于我一直以為必須要這句話才能在讓該插件正常運(yùn)行,也就是說,我這里是2.0的 就要把4.0改成2.0 ,網(wǎng)上還有人說把requestValidationMode這部分刪除就行了,等等 到最后我才知道,所有報(bào)錯(cuò)的地方 都只是2.0配置文件不支持的原因,直接刪除即可,當(dāng)然不刪也不影響,我這里是刪除了的,因?yàn)槲沂且粋€(gè) 完美主義者,不喜歡看到有報(bào)錯(cuò)O(∩_∩)O哈哈~。
好了,進(jìn)入正題,以上只是解決編譯不通過的問題,其實(shí)最為重要的是以下部分ueditor.config.js 這個(gè)文件 才是核心啊,現(xiàn)在想想 我被坑了,而且還坑的不淺 我擦!!!
先來看看 原始的 文件在來看看 我配置好的文件:來講講紅色框的問題,先看原始的圖片的最上部分框和我配置好的第一張圖片的框,觀察window.UEDITOR_HOME_URL = "/ManagePage/ueditor"? 這部分,原始版本沒有配置,我這里添了的,他的作用是確定ueditor這個(gè)插件在你的項(xiàng)目中的位置,沒有這句話會(huì)報(bào)很多錯(cuò),錯(cuò)誤的中心都是找不到某某文件,現(xiàn)在想想,這句話才是核心啊,
在來看看原始圖片的第二個(gè)框:這部分就是配置圖片上傳的地方,注意看? 原始版本有些地方被注解了,這些注解會(huì)影響圖片上傳彈出框的效果:,這就是被注解的效果,你只用將這部分的注解都去掉就行了,在看看原始圖片的第三個(gè)框:其實(shí)沒有作用,這部分可以根據(jù)你的需求 選擇是否注解,這里不影響圖片上傳,
好了,到此為止 如果你還報(bào)以下錯(cuò)誤:,那么你就可以在imageUp設(shè)置斷點(diǎn)監(jiān)視以下,簡(jiǎn)單的說一下這個(gè)錯(cuò)的原因,500 Internal.....錯(cuò)誤,通常我們會(huì)聯(lián)想到 編譯錯(cuò)誤,剛開始的時(shí)候我也想到了這個(gè)原因,只是不知道如何處理,后來,我們 頭 直接把error 后面那部分復(fù)制到瀏覽器的地址中,執(zhí)行如圖: 根據(jù)返回來的 這些字符 我們就能推斷 錯(cuò)誤中下面那部分的 原因了,是因?yàn)樯蟼鞒晒髐rl 、title等都為空造成的,解決辦法是:在imageUp 設(shè)置斷點(diǎn)監(jiān)視以下:我的結(jié)果是:根據(jù)圖中紅色框部分,我們可以推測(cè):傳遞過來的參數(shù)是upload1 字符串,這里他進(jìn)行 Convert.toInt32 當(dāng)然會(huì)報(bào)錯(cuò),就造成了 上面上傳報(bào)錯(cuò)的情況,解決辦法是:直接把上傳過來的參數(shù)作為存儲(chǔ)的地址即可。至此? 大功告成了。
如果 你的圖片上傳還出問題 就在百度中收索:ueditor1_3_5-utf8-net .netFramwork 2.0版本 在csdn中 我上傳了 2.0 和 4.0 兩個(gè)版本。4.0的 就收ueditor1_3_5-utf8-net .netFramwork 4.0版本?? 里面有完整配置。
?
轉(zhuǎn)載于:https://www.cnblogs.com/Lixinhua-GoOn/p/3631228.html
總結(jié)
以上是生活随笔為你收集整理的关于editor网页编辑器ueditor.config.js 配置图片上传的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 播放提示音+页面右下角提示框
- 下一篇: 小程序事件参数传递