UEditor 多图上传提示跨域问题的解决

技术分享 2020-06-01
UEditor 多图上传提示跨域问题的解决

前后端分离老项目用 UEditor 多图上传报跨域错。后端跨域已处理,最终改用 jQuery Ajax 提交 FormData 即上传成功。

UEditor 是老牌编辑器,且已不再更新,不推荐使用。但有个前后端分离的老项目用到了它,上传图片接口已经做了跨域处理。配置好图片上传路径后运行、打开调试一测,却报了跨域错误。

UEditor 上传跨域报错

找到上传图片的代码,发现实际走的是 webuploader.js。起初在网上查,尝试各种前后端改法都不成功。偶然想起用 jQuery Ajax 试试——程序正好已经引用了 jQuery,于是改成:

$.ajax({
  url: server,
  dataType: 'json',
  type: opts.method,
  async: false,
  data: formData,
  xhr: function(){ return xhr; },
  processData: false,
  contentType: false,
  success: function(data){ console.log(data); },
  error: function(response){ console.log(response); }
});

一试竟然成功了,看来后端的跨域设置本身没有问题。