axios配置onUploadProgress产生跨域问题

244 阅读1分钟
  • onUploadProgress监听上传进度产生跨域

问题起因:

ie和edge浏览器在调用xhr.upload.onprogress进度事件时,仍然只会发送post或者get请求, 但是火狐等高端一点的浏览器会将其视为跨域问题,并在post或者get请求之前,自动发出一个option请求 那么坑爹的就是,后台不解决option,后续新的请求就不会得到响应。

解决方案

后台处理option请求就行 Java写法

@Override
protected void doOptions(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {
    // TODO 自动生成的方法存根
    super.doOptions(arg0, arg1);
    arg1.setHeader("Content-Type", "application/json");
    arg1.setHeader("Access-Control-Allow-Origin", "*");
    arg1.setHeader("Access-Control-Allow-Methods", "POST", "GET", "OPTIONS", "DELETE", "PUT");
    arg1.setHeader("Access-Control-Max-Age", "3600")
}

内容转载自 小九的小酒