CKEditor拖动图像只是重新加载编辑器,其中没有图像

时间:2017-11-22 04:33:13

标签: javascript jquery ckeditor

我正在尝试使用ckeditor(4.7版本)的上传图片插件而没有任何运气。图像上传正常,但上传完成后编辑器闪烁,显然重新加载,没有图像。

服务器端代码如下:

try
        {
            HttpPostedFileBase uploads = HttpContext.Request.Files["upload"];
            string file = uploads.FileName;
            string ruta = Server.MapPath("~/App_Data/" + file);
            uploads.SaveAs(ruta);
            var exito = new
            {
                uploaded = 1,
                fileName = file,
                url = HttpUtility.UrlEncode("http://localhost:7742/App_Data/" + file),
            };
            return Json(exito, JsonRequestBehavior.AllowGet);
        }

编辑器配置如下:

<script type="text/javascript">
    CKEDITOR.config.language = 'es';
    CKEDITOR.config.extraPlugins = 'uploadimage';
    CKEDITOR.config.imageUploadUrl = '/Home/UploadImages';
    CKEDITOR.replace("editorNosotros");
</script>

我知道我没有提供很多细节,但是我正在关注ckeditor的文档(here)而且我没有找到任何关于这种行为的信息(我用Google搜索的大部分内容都是指之前版本的CKEditor的)。 我也尝试将网址更改为/App_Data/" + file,但似乎没有任何效果。我不确定编辑器是否正在重新加载或实际发生了什么。

好的,感谢HMR的评论,事情变得越来越有趣。我添加了以下代码,因为其他任何东西都返回404错误,因为图像的路径不正确:

Uri baseUri = new Uri("http://localhost:7742");
            Uri myUri = new Uri(baseUri, "App_Data/" + file);
            var exito = new
            {
                uploaded = 1,
                fileName = file,
                url = myUri.PathAndQuery
            };

我还必须在网络配置中添加配置:

<security>
  <requestFiltering>
    <hiddenSegments>
      <remove segment="App_Data" />
    </hiddenSegments>
  </requestFiltering>
</security>

现在对图像的所有请求都返回Ok,但是我看不到控制器操作的json响应,仍然编辑器重新加载而没有图像。

任何评论都将不胜感激。

0 个答案:

没有答案