Jfinal 跨域上传文件

发布于 2021-12-02 06:48:30 字数 2095 浏览 855 评论 4

@jfinal  在使用vuejs做前端开发时,采用wangeditor作为编辑器,上传图片设置为跨域方式。但是在wangeditor调用上传url时先请求options,可自己写jfinal处理上传ctrl却只执行一次返回200状态给wanggeditor后却不能再post请求。

浏览器访问截图如下:

代码如下:

/**
     *wangEditor上传
     */
    public void wangEditorUpload(){
        String reqMethod=this.getRequest().getMethod();
//        if(!"POST".equals(reqMethod)){
//            renderNull();
//            return;
//        }
        String path = this.getRequest().getRealPath("/image");
        File file = new File(path);
        if (!file.exists())
            file.mkdirs();
        String fileName = "";// 文件名称

        UploadFile uploadFile=this.getFile();
        /**上传文件处理内容**/
        DiskFileItemFactory factory = new DiskFileItemFactory();
        ServletFileUpload sfu = new ServletFileUpload(factory);
        sfu.setHeaderEncoding("UTF-8"); // 处理中文问题
        sfu.setSizeMax(1024 * 1024); // 限制文件大小
        try {
            List<FileItem> fileItems = sfu.parseRequest(this.getRequest()); // 解码请求
            for (FileItem fi : fileItems) {
                fileName = UUID.randomUUID()+fi.getName().substring(fi.getName().lastIndexOf("."),fi.getName().length());
                fi.write(new File(path, fileName));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

        //获取图片url地址
        String imgUrl = "http://localhost:8080/upload/image/" + fileName;
        this.renderText(imgUrl);  //返回url地址
    }

 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

看透却不说透 2021-12-06 13:36:19

设置header都添加了,没有起到作用。

陌若浮生 2021-12-06 07:42:50
getResponse().setHeader("Access-Control-Allow-Methods", "POST, PUT, OPTIONS");

查查请求头

加上这个试试?

本王不退位尔等都是臣 2021-12-05 03:41:56
getResponse().setHeader("Access-Control-Allow-Origin", "*");
白龙吟 2021-12-03 02:24:19

目前是在开发中碰到的跨域,即web前端采用8085端口访问,服务器接口采用8080。那么就会导致跨域问题。在正式发布会在统一的域名下即可解决。但是不代表就不去解决这样跨域的问题。望有大神提出方案来解决。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文