2KB项目,专业的源码交易网站 帮助 收藏 每日签到

ueditor抓取不到远程图片的问题

  • 时间:2019-07-05 02:23 编辑:NBXG.COM 来源:Industrynet 阅读:535
  • 扫一扫,手机访问
  • 分享
摘要:ueditor抓取不到微信图片及其他无后缀的图片问题看到一些好的文章,想把外面的内容给复制下来.固然是连文字带图片一同抓取了.因而被内容直接复制到后台的UEDITOR中,后果发明图片没有被抓取下来.baidu材料未果.只好本人研讨了.发明首要问题

ueditor抓取不到微信图片及其他无后缀的图片问题

看到一些好的文章,想把外面的内容给复制下来.固然是连文字带图片一同抓取了.


因而被内容直接复制到后台的UEDITOR中,后果发明图片没有被抓取下来.baidu材料未果.只好本人研讨了.


发明首要问题还在于ueditor对传送过去的图片地址处置过分容易,在提取后缀的时分只是采取取"."前面的字串串方法.


原代码为 (Uploader.class文件)


<% $fileType = strtolower(strrchr($imgUrl, '.'));%>


但微信里的文章图片是没有后缀的,也有一些网站的图片也没有后缀,这样$fileType就会获得一个错误的值,在前面的后缀类型断定是会直接给否掉.同时 stristr($heads['Content-Type'], "image")这句话也会报错,估量也是由于是没有后缀的问题.


微信图片中有一个wx_fmt参数,外面的值=png jpeg gif,认为该值即图片格局,因而将该值作为了$fileType的值.(容易粗犷些,直接全部指定为gif也行),微信图片抓取成功.


但在运用IE检查时,发明非常多图片不显示.查了很多多少问题,最初发明,本来微信誉的是webp格局的图片,IE基本不支撑.哭一个.终极只好设定只抓取微信的gif格局图片(微信貌似静态是gif,静态都是webp).


上面的办法关于抓取无后缀的图片是可行的,大家可以尝尝.有必须全部代码的可以给我留言.


ueidtor抓取远程图片成功后,没法主动变卦编辑器中的图片地址问题

在测试过程当中,还发明了另外一个问题ueditor抓取图片成功,并曾经上传到Server后,编辑器中的代码并没有更新为本人Server上的图片途径.又是费力找缘由


ueditor.all.min.js查找catchRemoteImage.


 UE.plugins.catchremoteimage=function(){var
d=this,c=UE.ajax;!1!==d.options.catchRemoteImageEnable&&(d.setOpt({catchRemoteImageEnable:!1}),d.addListener("afterpaste",function(){d.fireEvent("catchRemoteImage")}),d.addListener("catchRemoteImage",function(){function
b(a,b){var
f=p.serializeParam(d.queryCommandValue("serverparam"))||"",f=p.formatUrl(e+(-1==e.indexOf("?")?"?":"&")+f),h={method:"POST",dataType:p.isCrossDomainUrl(f)?"jsonp":"",timeout:6E4,onsuccess:b.success,onerror:b.error};h[g]=a;c.request(f,h)}for(var
a=d.getOpt("catcherLocalDomain"),e=d.getActionUrl(d.getOpt("catcherActionName")),h=d.getOpt("catcherUrlPrefix"),g=d.getOpt("catcherFieldName"),l=[],k=f.getElementsByTagName(d.document,"img"),m=function(a,b){if(-1!=a.indexOf(location.host)||/(^.)|(^/)/.test(a))return!0;if(b)for(var
c=0,e;e=b[c++];)if(-1!==a.indexOf(e))return!0;return!1},n=0,q;q=k[n++];)q.getAttribute("word_img")||(q=q.getAttribute("_src")||q.src||"",/^(https?|ftp):/i.test(q)&&!m(q,a)&&l.push(q));l.length&&b(l,{success:function(a){try{var
b=void 0!==a.state?a:eval("("+a.responseText+")")}catch(c){return}var
e,g,n,l=b.list;for(a=0;b=k[a++];)for(n=b.getAttribute("_src")||b.src||"",e=0;g=l[e++];){//判定原始名称及返回的值是否相同,把返回值进行&amp;还原var
my_g_source=g.source.replace(/&amp;/g,"&");if(n==my_g_source&&"SUCCESS"==g.state){e=h+g.url;f.setAttributes(b,{src:e,_src:e});break}}//....


上述代码的最后,n为所抓取图片的原始url, g.source返回抓取成功后返回的原始url两者需要比较,相同时,才会去变更成自己服务器上的图片url.但返回的地址是编码后的.一些特殊字符经过了重编译,需要进行一些还原.


my_g_source=g.source.replace(/&amp;/g,"&");//只是对微信抓取图片有效,如果抓取其他网站图片失效,可以重新进行一些正则还原.



2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务

  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【计算机/互联网|】Nginx出现502错误(2020-01-20 21:02)
【计算机/互联网|】网站运营全智能软手V0.1版发布(2020-01-20 12:16)
【计算机/互联网|】淘宝这是怎么了?(2020-01-19 19:15)
【行业动态|】谷歌关闭小米智能摄像头,因为窃听器显示了陌生人家中的照片(2020-01-15 09:42)
【行业动态|】据报道谷歌新闻终止了数字杂志,退还主动订阅(2020-01-15 09:39)
【行业动态|】康佳将OLED电视带到美国与LG和索尼竞争(2020-01-15 09:38)
【行业动态|】2020年最佳AV接收机(2020-01-15 09:35)
【行业动态|】2020年最佳流媒体设备:Roku,Apple TV,Firebar,Chromecast等(2020-01-15 09:31)
【行业动态|】CES 2020预览:更多的流媒体服务和订阅即将到来(2020-01-08 21:41)
【行业动态|】从埃隆·马斯克到杰夫·贝佐斯,这30位人物定义了2010年代(2020-01-01 15:14)
联系我们

Q Q: 7090832

电话:400-0011-990

邮箱:7090832@qq.com

时间:9:00-23:00

联系客服
商家入住 服务咨询 投拆建议 联系客服
0577-67068160
手机版

扫一扫进手机版
返回顶部