java使用webuploader实现跨域上传详解

 更新时间:2017年07月07日 11:03:31   作者:Charles  
目前初步接触JAVA图片上传,用的webuploader。已经跟后台对接上,但是有个问题就是跨域请求,通过查找相关资料终于实现了,下面这篇文章主要给大家介绍了关于java使用webuploader实现跨域上传的相关资料,需要的朋友可以参考下。

前言

项目中使用webuploader进行文件上传,需要用到跨域,查看webuploader的issues发现是支持上传的,但是他们写的回复都是不清不白的,有点迷糊;想了半天才知道咋回事,也可能是我比较笨,再次记录下java中详细的处理。

webuploader进行上传,会执行2个请求;一个option请求,一个post(根据你的webuploader的配置method 值决定),需要在option请求中对响应头进行处理,post响应头也进行响应的处理。

以servlet为例:

@WebServlet(description = "文件上传",value = {"/file/upload"})
public class FileUpload extends HttpServlet {

 public FileUpload() {
  super();
 }

 @Override
 protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  resp.setHeader("Access-Control-Allow-Origin", "*");
  resp.setHeader("Access-Control-Allow-Methods", "*");
  resp.setHeader("Access-Control-Allow-Headers", "x-requested-with,content-type");
  resp.setContentType("application/json");
  resp.setCharacterEncoding("utf-8");
  //文件上传逻辑


 }

 @Override
 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  doPost(req, resp);
 }

 @Override
 protected void doOptions(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  resp.setHeader("Access-Control-Allow-Credentials", "false");
  resp.setHeader("Access-Control-Allow-Origin", "*");
  resp.setHeader("Access-Control-Allow-Methods", "*");
  resp.setHeader("Access-Control-Allow-Headers", "x-requested-with,content-type");
  resp.setContentType("application/json");
  resp.setCharacterEncoding("utf-8");
  super.doOptions(req, resp);
 }

再次测试跨域上传,正常

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • Java中常用的设计模式之建造者模式详解

    Java中常用的设计模式之建造者模式详解

    这篇文章主要为大家详细介绍了Java中常用的设计模式之建造者模式,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • 你真的懂java的日志系统吗

    你真的懂java的日志系统吗

    日志管理的第一件事,就是日志的收集,日志收集是开发者必备的技巧,不管是哪个开发语言,哪个开发平台,日志收集的插件都是有很多选择的,下面这篇文章主要给大家介绍了关于java日志系统的相关资料,需要的朋友可以参考下
    2022-02-02
  • java模拟post请求发送json的例子

    java模拟post请求发送json的例子

    本篇文章主要介绍了java模拟post请求发送json的例子,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • idea如何自定义代码模板

    idea如何自定义代码模板

    这篇文章主要介绍了idea如何自定义代码模板问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • 利用Java搭建个简单的Netty通信实例教程

    利用Java搭建个简单的Netty通信实例教程

    这篇文章主要给大家介绍了关于如何利用Java搭建个简单的Netty通信,文中通过示例代码介绍的非常详细,对大家学习或者使用Java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-05-05
  • Java数据结构之快速幂的实现

    Java数据结构之快速幂的实现

    快速幂是用来解决求幂运算的高效方式。本文将详细为大家介绍如何利用Java实现快速幂,以及利用快速幂求解幂运算问题,需要的可以参考一下
    2022-03-03
  • IDEA配置maven环境的详细教程(Unable to import maven project报错问题的解决)

    IDEA配置maven环境的详细教程(Unable to import maven project报错问题的解决)

    这篇文章主要介绍了IDEA配置maven环境的详细教程(Unable to import maven project问题的解决),本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • Java反射获取所有Controller和RestController类的方法

    Java反射获取所有Controller和RestController类的方法

    这篇文章给大家分享了Java反射获取所有Controller和RestController类的方法,文中有详细的代码示例讲解,具有一定的参考价值,需要的朋友可以参考下
    2023-08-08
  • Java线程同步、同步方法实例详解

    Java线程同步、同步方法实例详解

    本篇文章主要通过实例介绍了Java线程:线程的同步-同步方法,需要的朋友可以参考下
    2017-04-04
  • Java中ArrayList和LinkedList的区别

    Java中ArrayList和LinkedList的区别

    ArrayList和LinkedList在这个方法上存在一定的性能差异,本文就介绍了Java中ArrayList和LinkedList的区别,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06

最新评论