关于editor网页编辑器ueditor.config.js 配置图片上传

最近公司项目在做一个门户网站,其中新闻和简介等部分使用到了ueditor编辑器,但是上级明确指示需要图片上传这个功能,这时却发现图片上传功能不能正常使用,上传时一直报错,网上收了好几个处理办法,都说的不够详细明了,突然发现ueditor这么强大的工具在开发过程中的致命盲点,很纠结,最终经过很久的纠结和苦思冥想终于解决了该问题,以下是关于ueditor 在web 2.0版本下的问题解决思路和方法,因为经过测试 网上下载的ueditor编辑器在4.0下 问题不大。好了言归正传,首先亮出ueditor在我的项目的结构位置:

,这里先说明一下 标示的这些地方的作用,红框标示的是Ueditor整个文件的位置,红线标示的 是 配置过程中将会用到的各部分,接下来会一一讲解。接下来在亮出原始版本ueditor结构位置:

原始版本ueditor是不能正常上传图片的,之所以晒出这两张图片是为了更好的进行对比 找出 问题所在,便于分析 你的问题出在哪里。首先问题可以很明确的是程序编译没有通过,你按F6进行编译他提示生成成功,其实不然,接下来我们就来分析哪些地方造成的编译没有通过

我们先从上面带星号这个类开始讲:请看以下图片:,如果不出意外,你正在有这样的疑问,这个错误是怎么产生的,因为我那时就纠结了很久,如果你细心的话你会发现第一张图片中该文件已经改名为UploaderFile,这是当时最先想到的解决办法,以为改个名字就能解决 该报错原因,结果我错了,(当然改了名字也不影响),那么问题出在哪里呢?其实问题出在头部引用红线位置就是问题所在,2.0是不支持Linq的 所以 这句要删掉,同时引用Linq的还有Config.cs 然后就是上面两句话,可以看出下面一句话已经在报错了,这句话为何报错?因为看程序结构你可以看出Config.cs类和Uploader.cs类本来就在同一个项目中,这里在处理程序中再次引用就相当于原本就编译了,再编译一次,所以提示同时存在于.....两个地方,而为何4.0不报错,我想应该是4.0在升级后处理了这个逻辑吧!这三句话都必须删掉

接下来我把imageUp.ashx的代码贴出来,只要你是ueditor1_3_5-utf8-net这个版本 就没有问题。

 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);                   //获取上传状态
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"] + "'}");  //向浏览器返回数据json数据
39     }
40 
41     public bool IsReusable
42     {
43         get
44         {
45             return false;
46         }
47     }
48 
49 }

 ,接下来在看web.config文件,原始的文件时这样的:,其实这个文件 在整个问题中没有太大影响(也就是说不会影响图片上传),但是为何又要单独讲一下呢?因为在下这个亏吃的有点大,该文件中targetFramework="4.0"这句话 误导了我,以至于我一直以为必须要这句话才能在让该插件正常运行,也就是说,我这里是2.0的 就要把4.0改成2.0 ,网上还有人说把requestValidationMode这部分删除就行了,等等 到最后我才知道,所有报错的地方 都只是2.0配置文件不支持的原因,直接删除即可,当然不删也不影响,我这里是删除了的,因为我是一个 完美主义者,不喜欢看到有报错O(∩_∩)O哈哈~。

好了,进入正题,以上只是解决编译不通过的问题,其实最为重要的是以下部分ueditor.config.js 这个文件 才是核心啊,现在想想 我被坑了,而且还坑的不浅 我擦!!!

先来看看 原始的 文件在来看看 我配置好的文件:来讲讲红色框的问题,先看原始的图片的最上部分框和我配置好的第一张图片的框,观察window.UEDITOR_HOME_URL = "/ManagePage/ueditor"  这部分,原始版本没有配置,我这里添了的,他的作用是确定ueditor这个插件在你的项目中的位置,没有这句话会报很多错,错误的中心都是找不到某某文件,现在想想,这句话才是核心啊,

在来看看原始图片的第二个框:这部分就是配置图片上传的地方,注意看  原始版本有些地方被注解了,这些注解会影响图片上传弹出框的效果:,这就是被注解的效果,你只用将这部分的注解都去掉就行了,在看看原始图片的第三个框:其实没有作用,这部分可以根据你的需求 选择是否注解,这里不影响图片上传,

好了,到此为止 如果你还报以下错误:,那么你就可以在imageUp设置断点监视以下,简单的说一下这个错的原因,500 Internal.....错误,通常我们会联想到 编译错误,刚开始的时候我也想到了这个原因,只是不知道如何处理,后来,我们 头 直接把error 后面那部分复制到浏览器的地址中,执行如图: 根据返回来的 这些字符 我们就能推断 错误中下面那部分的 原因了,是因为上传成功后url 、title等都为空造成的,解决办法是:在imageUp 设置断点监视以下:我的结果是:根据图中红色框部分,我们可以推测:传递过来的参数是upload1 字符串,这里他进行 Convert.toInt32 当然会报错,就造成了 上面上传报错的情况,解决办法是:直接把上传过来的参数作为存储的地址即可。至此  大功告成了。

如果 你的图片上传还出问题 就在百度中收索:ueditor1_3_5-utf8-net .netFramwork 2.0版本 在csdn中 我上传了 2.0 和 4.0 两个版本。4.0的 就收ueditor1_3_5-utf8-net .netFramwork 4.0版本   里面有完整配置。

 

转载于:https://www.cnblogs.com/Lixinhua-GoOn/p/3631228.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/460481.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[歪谈]拽一个贵人出来给你当炮架子

[歪谈]拽一个贵人出来给你"当炮架子" 我们在古装神话剧中经常会听到某个“先知”对前来算命的人说&#xff1a;你会在某某时刻遇到你的贵人。而这个贵人会在事业上助你一臂之力。 这里有个问题&#xff1a;贵人到底是什么&#xff1f;我们怎样去寻找我们的贵人。 前几…

【原创】uC/OS 中LES BX,DWORD PTR DS:_OSTCBCur的作用及原理

1 LES BX, DWORD PTR DS:_OSTCBCur ;OSTCBCur->OSTCBStkPtr SS:SP&#xff01;&#xff01;&#xff01; 2 MOV ES:[BX2], SS ;将当前SS&#xff08;栈的基地址&#xff09;寄存器值存放至当前任务控制块的2&#xff0c;3内存单元 3 …

J2SE J2EE J2ME的区别

J2SE J2EE J2ME的区别 J2SE J2EE J2ME的区别多数编程语言都有预选编译好的类库以支持各种特定的功能&#xff0c;在Java中&#xff0c;类库以包&#xff08;package&#xff09;的形式提供&#xff0c;不同版本的Java提供不同的包&#xff0c;以面向特定的应用。 Java2平台包括…

配置ssh

首先肯定要先更改ssh的端口号&#xff0c;比如&#xff1a;8899 以及安全选项 gedit /etc/ssh/sshd_configPermitRootLogin noMaxAuthTries 3AllowUsers ***** 更改Port参数 Port8899 然后更改services文件ssh端口号 gedit /etc/services 更改对应ssh的tcp和udp端口 都为8899 s…

第6季1:H264编码原理与基本概念

以下内容源于网络资源的学习与整理&#xff0c;如有侵权请告知删除。 参考博客 &#xff08;1&#xff09;H264 编码基本原理_ByteSaid的博客-CSDN博客_h264编码原理 &#xff08;2&#xff09;H264 编码简介_mydear_11000的博客-CSDN博客 &#xff08;3&#xff09;什么是I帧…

pureMVC简单示例及其原理讲解四(Controller层)

本节将讲述pureMVC示例中的Controller层。 Controller层有以下文件组成&#xff1a; AddUserCommand.asDeleteUserCommand.asModelPrepCommand.asViewPrepCommand.asStartupCommand.asAddUserCommand 。顾名思义&#xff0c;它是添加用户命令。让我们首先看看代码。 Addusercom…

ActiveMQ学习笔记(2)——JMS消息模型

2019独角兽企业重金招聘Python工程师标准>>> 1.1 JMS模型简介 JMS支持两种消息通信模型&#xff1a; 点对点模型(Point to Point&#xff0c;P2P)发布者/订阅者模型&#xff08;publish/subscribe&#xff0c; pub/sub&#xff09;P2P模型中&#xff0c;Sender把一…

C# 图片盖章功能实现,支持拖拽-旋转-放缩-保存

实现图片盖章功能&#xff0c;在图片上点击&#xff0c;增加“图章”小图片&#xff0c;可以拖拽“图章”到任意位置&#xff0c;也可以点击图章右下角园框&#xff0c;令图片跟着鼠标旋转和放缩。 操作方法&#xff1a;1.点击增加“图章”2.选中移动图标3.点中右下角放缩旋转图…

《Effective Objective-C 2.0》1、熟悉Objective-C

该系列是《Effective Objective-C 2.0——编写高质量iOS与OS X代码的52个有效方法》的读书笔记。 第一条&#xff1a;了解Objective-C语言的起源 同C类似&#xff0c;Objective-C也是C语言进行面相对象化的扩展。二者存在一个根本性的区别&#xff1a; C是一种基于函数调用的语…

图像编码的必要性、可行性、技术分类、评价指标

以下内容源于网络资源的学习与整理&#xff0c;如有侵权请告知删除。 1、图像编码的必要性 图像的数据量非常大&#xff0c;为了有效地传输和存储图像&#xff0c;有必要压缩图像的数据量。随着现代通信技术的发展&#xff0c;要求传输的图像信息的种类和数据量愈来愈大。若不…

【一周一算法】算法2:邻居好说话——冒泡排序

【啊哈&#xff01;算法】    简化版的桶排序不仅仅有上一节所遗留的问题&#xff0c;更要命的是&#xff1a;它非常浪费空间&#xff01;例如需要排序数的范围是0~2100000000之间&#xff0c;那你则需要申请2100000001个变量&#xff0c;也就是说要写成int a[2100000001]。…

用TextPaint来绘制文字

TextPaint是paint的子类&#xff0c;用它可以很方便的进行文字的绘制&#xff0c;一般情况下遇到绘制文字的需求时&#xff0c;我们一般用TextPaint所提供的方法。开始学习如何绘制文字之前&#xff0c;我们必须要先了解下android中文字是怎么绘制到屏幕上的&#xff0c;文字的…

第二季4:初始化MPP系统(step12)

以下内容源于朱有鹏嵌入式课程的学习与整理&#xff0c;如有侵权请告知删除。 前言 本文将详细介绍博文第二季3&#xff1a;sample_venc.c的整体分析中提及的“初始化MPP系统”。 MPP系统的初始化包括以下步骤&#xff1a; 配置VB&#xff1a;HI_MPI_VB_SetConf函数 初始化…

存储过程——介绍(一)

由于工作缘故&#xff0c;在工作中用到储存过程较少&#xff0c;在下班之余出于对学习的热情&#xff0c;以下分享下学习储存过程心得&#xff0c;往大牛们指点迷津&#xff1a; 储存过程&#xff1a;官方解释为可以将一些预先编译的sql语句集中起来有sql service数据库服务器来…

《人月神话》观后感

1.外科手术队伍 项目经理在项目的初期必须清楚的估计项目的人月运作模式&#xff08;时间、人力在项目各阶段的分配&#xff09;&#xff0c;例如什么时候需要出什么样成果&#xff0c;决定了什么时候需要什么样的人加入项目&#xff0c;这是项目经理的责任。 2.贵族专制…

第二季5:配置视频捕获模块(step3:VI模块)

以下内容源于朱有鹏嵌入式课程的学习与整理&#xff0c;如有侵权请告知删除。 前言 本文将详细介绍博文第二季3&#xff1a;sample_venc.c的整体分析提及的“配置视频捕获模块”。 分析方法上&#xff0c;我们首先介绍VI模块相关的宽动态、设备、通道等概念&#xff0c;然后…

git 代理设置

git 代理设置: git config --global http.proxy http://proxy.com:8080git config --global https.proxy http://proxy.com:8080git config --global http.sslverify false 转载于:https://www.cnblogs.com/lizhanglong/p/3642152.html

简化Java中的异常处理

为什么80%的码农都做不了架构师&#xff1f;>>> #1. 不需要Checked异常 Java中的Checked异常&#xff0c;可以说有弊无利&#xff0c;它除了能带来一系列的麻烦&#xff0c;能干的事情Unchecked异常都能干。 ##1.1. 代码污染 首先&#xff0c;当一个方法声明抛出一…

Linux常用命令之wget

wget&#xff1a;从网络上下载文件到当前目录。 转载于:https://www.cnblogs.com/nufangrensheng/p/3646055.html

MySQL的timestamp字段可以使用的范围是多少

还是之前工作中遇到的一个小问题。我在做一个收据采集的程序&#xff0c;需要记录起始时间和结束时间&#xff0c;在数据库中是用timestamp字段来保存的&#xff0c;有些情况下不存在起始时间&#xff0c;此时就需要设置一个默认的起始时间&#xff0c;当初想着是使用timestamp…