• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ASP.NET笔记之CKEditor的使用方法
    1、CKEditor原名FckEditor,著名的HTML编辑器,可以在线编辑HTML内容。自己人用CKEditor,网友用UBBEditor。

         配置参考文档,主要将ckeditor中的(adapters、images、lang、plugins、skins、themes、ckeditor.js、config.js、contents.css)解压到js目录,然后“显示所有文件”,将ckeditor的目录“包含在项目中”,在发帖页面引用ckeditor.js,然后设置多行文本框的class="ckeditor"(CSS强大)(服务端控件CssClass=" ckeditor ",客户端控件要设定cols、rows属性,一般不直接用html控件),代码中仍然可以通过TextBox控件的Text属性来访问编辑器内容。

          由于页面提交的时候asp.net会把富文本编辑器中的html内容当成攻击内容,因此需要在aspx中的Page标签中设置 ValidateRequest="false" 来禁用攻击检测(2010中还要根据报错信息修改WebConfig来禁用XSS检测)。

           遇到错误如下:

        

          **修改WebConfig来禁用XSS检测

    asp.net提交“>”这些字符到aspx页面时,如果没有在文件头中加入“ValidateRequest="false"”这句话,就会出现出错提示:从客户端(?xml version="...='UTF-8'?>SOAP-ENV:Envelope S...")中检测到有潜在危险的Request.Form 值。

    如你是vs2008的用户,只要在aspx文件的开始部分,如下文所示处:

    复制代码 代码如下:

    %@ Page Language="C#" CodeBehind="News_add.aspx.cs"   Inherits="CKEditor.Default" %>加上ValidateRequest="false" 即可。

    但是如果是VS2010,仅仅这样还是不够的。还需要双击打开web.config,在system.web>/system.web>之间添加下面语句      

    复制代码 代码如下:

    pages validateRequest="false" />
    httpRuntime requestValidationMode="2.0" />

    2、CKFinder是一个CKEditor插件,用来为CKEditor提供文件的上传的功能。将bin\Release下的CKFinder.dll添加到项目的引用;将core、ckfinder.js、ckfinder.html、config.ascx解压到CKFinder自己的目录。按照文档修改CKEditor的config.js,将上传的处理程序设定为CKFinder,注意路径的问题。
    复制代码 代码如下:

    CKEDITOR.editorConfig = function( config )
     {
         // Define changes to default configuration here. For example:
         // config.language = 'fr';
         // config.uiColor = '#AADC6E';

         //改成ckfinder的绝对路径,从网站的本目录开始
         var ckfinderPath = "/admin/js";
         config.filebrowserBrowseUrl = ckfinderPath + '/ckfinder/ckfinder.html';
         config.filebrowserImageBrowseUrl = ckfinderPath + '/ckfinder/ckfinder.html?Type=Images';
         config.filebrowserFlashBrowseUrl = ckfinderPath + '/ckfinder/ckfinder.html?Type=Flash';
         config.filebrowserUploadUrl = ckfinderPath + '/ckfinder/core/connector/aspx/connector.aspx?command=QuickUploadtype=Files';
         config.filebrowserImageUploadUrl = ckfinderPath + '/ckfinder/core/connector/aspx/connector.aspx?command=QuickUploadtype=Images';
         config.filebrowserFlashUploadUrl = ckfinderPath + '/ckfinder/core/connector/aspx/connector.aspx?command=QuickUploadtype=Flash';
     };

          使用测试,在插入超链接、插入图片、插入文件中都有“上传”l 因为上传文件是非常危险的动作,因此在文件上传的时候会进行权限校验。在config.ascx的CheckAuthentication方法中校验是否有权限上传,返回true表示有权限,否则没有权限,一般修改成判断用户是否登录,并且登录用户是有上传权限的用户,可以用Session或者Membership来做。

    复制代码 代码如下:

    public override bool CheckAuthentication()
         {
             // WARNING : DO NOT simply return "true". By doing so, you are allowing
             // "anyone" to upload and list the files in your server. You must implement
             // some kind of session validation here. Even something very simple as...
             //
             //        return ( Session[ "IsAuthorized" ] != null (bool)Session[ "IsAuthorized" ] == true );
             //
             // ... where Session[ "IsAuthorized" ] is set to "true" as soon as the
             // user logs on your system.
             object obj = Session["已经登录"] = true;
             if (obj!=nullConvert.ToBoolean(obj)==true)
             {
                 return true;
             }
             else
             {
             return false;
             }
         }

    思考:如何实现只有指定IP地址的用户才能上传?
    复制代码 代码如下:

    if (Request.UserHostAddress == "129.0.0.0.1") { return true; }

           在SetConfig函数中设置上传文件夹的位置BaseUrl、缩略图的位置,每种类型数据的上传路径、允许上传的文件类型AllowedExtensions等。

    您可能感兴趣的文章:
    • asp.net 为FCKeditor开发代码高亮插件实现代码
    • Asp.net FCKEditor 2.6.3 上传文件没有权限解决方法
    • FCKeditor ASP.NET 上传附件研究
    • asp.net ckeditor编辑器的使用方法
    • ASP.NET中FCKEDITOR在线编辑器的用法
    • ASp.net下fckeditor配置图片上传最简单的方法
    • asp.net CKEditor和CKFinder的应用
    • asp.net+FCKeditor上传图片显示叉叉图片无法显示的问题的解决方法
    • ASP.NET中CKEditor与CKFinder的配置使用
    上一篇:ASP.NET笔记之 viewstate与cache的使用
    下一篇:ASP.NET笔记之 行命令处理与分页详解
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ASP.NET笔记之CKEditor的使用方法 ASP.NET,笔记,之,CKEditor,的,