Плагин загрузки изображения CKEditor Как заменить base64 на URL в атрибуте SRC изображения

#javascript #c# #asp.net #ckeditor

#javascript #c# #asp.net #ckeditor

Вопрос:

Я пытаюсь использовать ссылку плагина загрузки изображения CKEditor для загрузки вставленного изображения в редактор с помощью пользовательского метода загрузки, потому что я не хочу сохранять текст со всеми данными изображения base6, которые заставляют данные сохранять слишком долго, и заменять данные URL загруженного изображения. У меня есть пользовательский метод, который загружает изображение и возвращает URL веб-метода для вызова, чтобы получить изображение. В моем пользовательском методе загрузки я возвращаю объект json с URL-адресом, он работает и загружает изображение, но в атрибуте src у меня все еще есть данные base64. Это конфигурация CKEditor в моем файле javascript

 CKEDITOR.replace('DESC_ARTICLEANSWER', {
  language: editorlang,
  toolbar: 'helpsi',
  skin: 'moono',
  filebrowserBrowseUrl: '/browser/browse.php',
  filebrowserImageBrowseUrl: '/browser/browse.php?type=Images',
  filebrowserUploadUrl: '../Common/uploadHandler.ashx?upload_type=img_ckeditor',
  filebrowserImageUploadUrl: '../Common/uploadHandler.ashx?upload_type=img_ckeditoramp;CKEditorFuncNum=1amp;codeSiteId='   $('#site').val()
});
  

И это мой пользовательский метод в файле uploadHandler.ashx:

 if ((context.Request.Form["upload_type"] == "img_ckeditor") || (context.Request.QueryString["upload_type"] == "img_ckeditor"))
{
  string _atchHTML = ProcessImageCKEditor(context);
  context.Response.Write(_atchHTML);
}
    
private string ProcessImageCKEditor(HttpContext context)
{
  string _atchHTML = "";
  try
  {

    string uploadpath = helpsi.framework.core.Configurator.Instance.getAppSettingsValue("APP_REQUEST_ATTACH_PATH");
    if (!uploadpath.StartsWith("\"))
    {
        uploadpath = context.Server.MapPath(uploadpath);
    }
    string file = context.Request.Files[0].FileName;
    string ext = Path.GetExtension(file);
    string fileName = Guid.NewGuid().ToString()   ext;
    string filetoupload = Path.Combine(uploadpath, fileName);

    HttpPostedFile uploads = context.Request.Files["upload"];
    string CKEditorFuncNum = context.Request["CKEditorFuncNum"];

    uploads.SaveAs(filetoupload);
    string url = "../Common/GetAttachment.aspx?uploadedImage=1amp;FileName="   fileName;
    _atchHTML = "{"uploaded": 1, "fileName": ""   fileName   "", "url": ""   url   ""}";


  }
  catch (Exception ex)
  {
     _atchHTML = "ERROR:"   ex.Message;
  }
  return _atchHTML;

}
  

Вызывается метод загрузки, и он выполняется успешно, изображение сохраняется, но когда он возвращается, в вставленном изображении в редакторе все еще есть строка данных base64, а не URL, полученный при сохранении. Чего мне не хватает?
В консоли у меня есть эта ошибка относительно виджета plugin.js файл, в этой функции

 function getFirstTextNode( el ) {
    return el.find( function( node ) {
        return node.type === 3;
    }, true ).shift();
}
  

Ошибка неперехваченного типа: el.find не является функцией