百度Ueditor編輯器wordimage踩坑

背景

改造公司老項目后臺編輯器,使用百度的Ueditor做替換。

發現問題

  • 1、ue編輯器初始化后部分參數無法覆蓋ueditor.config.js中的選項。
  • 2、wordimage(word圖片轉存)始終是灰色,無法使用。

解決辦法

  • 1、將ueditor.config.js中的inputXssFilter設置為false
  • 2、將ueditor.all.js源碼中添加input過濾規則的地方添加上下面的代碼:
if (whitList && config.inputXssFilter) {
...if (node.type !== 'element') {return false;}// 添加內容開始if (node.tagName === 'img' && node.attrs.word_img) {return false;}// 添加內容結束filter(node);
...
}
復制代碼

推薦使用第二種方法解決

尋蹤

  • 首先打開ueditor.all.js搜索“wordimage”找到 本地圖片引導上傳
UE.plugin.register('wordimage',function(){
...
復制代碼

在 inputRule 方法中使用 debugger 打斷點調試,發現在這里img的attrs變了

緊接著搜索"!== 'element'"很快就找到了:

發現如果是element元素就進行filter過濾,意識到了我可以通過關閉inputXssFilter來關閉這個過濾。

但是這個輸入的Xss過濾我感覺還是不要去掉的好。 所以就依據word_img的這個attr屬性添加了對應的判斷。

使之可以跳過這個filter。


結語

至此就解決了ueditor的wordimage圖片轉存不生效的問題了。

至于在實例化UE的時候,傳入 inputXssFilter: false 不生效的問題還木有去查,懶得查了,畢竟改了源碼后不影響使用。

還是希望開發者們在寫過濾規則的時候,要考慮全局,是否會有一些特定的規則處理。

大橘為重嘛!!!

表情包如有侵權,請聯系作者刪除

轉載于:https://juejin.im/post/5d00ab3e518825183b454cf7

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/448638.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/448638.shtml
英文地址,請注明出處:http://en.pswp.cn/news/448638.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

IntelliJ IDEA 配置JDK

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 IDEA配置JDK 1、點擊File -->Project Structure; 2、點擊左側標簽頁SDKs選項,再點擊左上角“”,…

get和post 兩種基本請求方式的區別

GET和POST是HTTP請求的兩種基本方法,要說它們的區別,接觸過WEB開發的人都能說出一二。 最直觀的區別就是GET把參數包含在URL中,POST通過request body傳遞參數。 你可能自己寫過無數個GET和POST請求,或者已經看過很多權威網站總結出…

無論是工作還是生活都要記住這些話

1.如果你不喜歡現在的工作,要么辭職不干,要么就閉嘴不言。初出茅廬,往往眼高手低,心高氣傲,大事做不了,小事不愿做。不要養成挑三揀四的習慣。不要雨天煩打傘,不帶傘又怕淋雨,處處表…

蘇嵌第一天,shell中一些基礎知識

一、常用環境變量 1、HOME變量 Linux系統中的每個用戶都有一個相關的稱作HOME的目錄。 2、PATH變量 包含一列用冒號定界的目錄的路徑名字,便于可執行程序的搜索。 3、PS1變量 PS1變量包含了shell提示符,$符號 4、LOGNAME變量 包含用戶的注冊名字…

Java異常處理001:Maven clean package時Failed to clean project: Failed to delete

Java異常處理001:Maven打包時Failed to clean project: Failed to delete 異常日志: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.6.1:clean (default-clean) on project fmk-web: Failed to clean project: Failed …

Weekly Contest 141

做了第一道后,看了下中間兩道題目,沒怎么看懂就先放著,做完最后一道,然后就沒時間了。 1089. Duplicate Zeros Given a fixed length array arr of integers, duplicate each occurrence of zero, shifting the remaining element…

IntelliJ IDEA 中配置、使用 SVN

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 1.配置svn 如下圖: file -- setting -- version control -- subversion -- 選擇 SVN安裝路徑 -- apply -- OK 2.直接檢出…

切記!職場郵件需注意的細節

電子郵件是如今工作場所重要的通信工具之一,但不是每個人都知道如何很好地使用這個工具。工作郵件也是人際溝通的一種方式,和打電話、面談一樣,有很多學問講究,所以在發送郵件之前一定要深思熟慮。 【發送,抄送&…

李洋瘋狂C語言之初

1.sizeof 是看數據類型所占空間大小,這個大小是以 字節(B)為單位 char 是C語言的字符數據類型 %d 用在printf 中表示往屏幕打印一個數字 printf ("char: %d\n", sizeof(char)); 數據類型之間的關系,shor…

時時流量查看工具-ifsta,nload,iftop

為什么80%的碼農都做不了架構師?>>> 1、ifstat 是一個網絡流量監測程序。能查看網卡的流出和流入的字節. 概要:ifstat就像iostat/vmstat描述其它的系統狀況一樣,是一個統計網絡接口活動狀態的工具。 參數: -l 監測環路…

10大清宿便排毒方法及簡單排毒瘦小腹運動

早上空腹喝水法:每日起床后空腹喝下500C.C.加鹽的冷開水。只要是冷的飲料或水分,在腸胃空腹時都有刺激腸胃蠕動的效果,而且越冰刺激效果越好,建議不需加鹽,以免高血壓患者因鹽分中的金屬離子造成腎的負擔。 優酪乳加綠…

破解 IntelliJ IDEA 、免費注冊方法、注冊碼

1. 找到hosts文件,在此路徑下 C:\Windows\System32\drivers\etc 2. 修改hosts 文件,在最后 加一行配置: (此操作需要電腦管理員權限) 0.0.0.0 account.jetbrains.com 3. 從idea 注冊碼生成網站生成一組注冊碼。網…

李洋瘋狂C語言之冒泡排序法

今天的課后任務是2種排序方式(冒泡排序和選擇排序) 冒泡排序法1 原理:從a[0]開始,依次將其和后面的元素比較,若a[0]>a[i],則交換他們,一直比較到a[n]。同理對a[1], a[2], ……a[n-1]處理&a…

MySQL水平分區代理Spock Proxy(一)

為什么80%的碼農都做不了架構師?>>> MySQL水平分區代理Spock Proxy 水平分區(sharding)將同一數據表中的數據通過特定的算法進行分離,分別保存在不同的數據表中,從而部署到不同的數據庫服務器上。 水平分區后,數據拆分…

OO第四單元作業

1.作業的架構設計 (1)對于第一次作業中,要求我們實現關于類圖的查詢指令。 在這次作業中,主要采用的儲存方法是哈希表。 在查詢方法上,大多數要求諸如共有多少類等,利用哈希表進行查詢即可。 比較困難的一些…

傷錢傷感情 10件不能和親戚一起干的事兒

關于親戚和理財,網友小盒總結了下十大別和親戚干的事兒,干了之后保管既傷錢又傷感情: 1、別幫親戚炒股 賺了覺得你賺得不如以前吹的那么多,賠了就剩翻臉了,搭時間搭功夫還不落好。 2、別和親戚一起做生意 道理同…

李洋瘋狂C語言之選擇排序

選擇排序法 原理: 選擇法循環過程與冒泡法一致,它還定義了記號mini,然后依次把a[min]同后面的元素比較,若a[min]>a[j],則使kj. 最后看看ki是否還成立,不成立則交換a[k], a[i],這樣就比冒泡法省下許多無用的交換&a…

利用 git 提交代碼、git 簡單使用(拉取、推送、分支、合并)

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 1.安裝 git sudo apt-get install git 2.查看版本: git --version 我的版本信息: 3. 配置用戶名和郵箱 : …

如何在android studio中設置sdk path?

為什么80%的碼農都做不了架構師?>>> Press F4 into Project StructureLeft > SDKsPress , add another sdk轉載于:https://my.oschina.net/itfanr/blog/195714

面試題之第一部分(Python基礎篇) 80題

第一部分(python基礎篇)80題 為什么學習Python?* # 1. python應用于很多領域,比如后端,前端,爬蟲,機器學習(人工智能)等方面,幾乎能涵蓋各個開發語言的領域&a…