Home  >  Q&A  >  body text

javascript - ajax跨域上传文件

我们开发方式是前后端分离的,不在一个域名上,现在要是上传文件该怎么做,以前用ajaxFileUpload就可以了。但这个好像不支持跨域。谁有解决方案?

天蓬老师天蓬老师2769 days ago776

reply all(6)I'll reply

  • 怪我咯

    怪我咯2017-04-11 12:18:51

    开发方式前后端分离,部署应该还是同一个域下的吧,一般前后端分离,开发环境下,前端用到的服务器(大部分情况下是本地服)直接配置代理接口到接口真正地址去,这样做到前端表面是请求的还是本服接口,实际接口又代理到真正接口地址去了,而不存在跨域的问题。具体看你的开发环境怎么样的吧。打个比方,vue-cli的vue项目,自带本地服启动,配置文件可以配置proxy,来实现,页面请求接口/aaaa,实际上代理到,后端接口:http://houduan.com/aaaa去这样子。

    reply
    0
  • 巴扎黑

    巴扎黑2017-04-11 12:18:51

    让后端给JSONP接口,而不是JSON接口

    reply
    0
  • PHP中文网

    PHP中文网2017-04-11 12:18:51

    CORS跨域

    reply
    0
  • 天蓬老师

    天蓬老师2017-04-11 12:18:51

    建议在服务端封装一层,先把文件上传到前端通一个域名的服务端,再从服务端转移文件
    跨域也是可以上传,比较复杂,比较成熟的就是用iframe。

    reply
    0
  • PHP中文网

    PHP中文网2017-04-11 12:18:51

    使用iframe,跟后端约定返回的格式即可。

    reply
    0
  • 怪我咯

    怪我咯2017-04-11 12:18:51

    跨域是后端配置的 可以试试把文件转为base64字符串 让后端去解析

    reply
    0
  • Cancelreply