chrome 失败-网络异常,但是其他浏览器正常下载

震惊!!! 新鲜出炉的文件下载功能,在chrome 中惨遭滑铁卢
本文只针对 在chrome中滑铁卢 但在其他浏览器上攻无不克 
并且新鲜出炉的javaWEB文件下载功能

出现问题的地方在这里:

// 错误代码
		 response.setContentType("application/xlsx");
// 正确代码
        response.setContentType("application/xlsx;");
// 一个 ; 号之差 

正确代码是这样的:

// 拿到文件对象后的校验 下载
        if (!file.exists()) { 
            ResponseUtils.renderJson(response, JSON.toJSONString(Result.getMsgError("服务器上没有你需要的模板")));
        }
// 开始设置响应头,准备传输文件 
// 设置响应内容大小
        response.setHeader("Content-Length", String.valueOf(file.length()));
// 设置响应类型, 此处是xlsx
        response.setContentType("application/xlsx;");
// 设置 Content-Disposition 为 attachment 如此浏览器会激活文件下载框
// filename 则是 下载的文件的默认名称
        response.addHeader("Content-Disposition",
                "attachment; filename=" + UPLOAD_TEMPLATE_FILE_NAME);

        byte[] buffer = new byte[1024];
        BufferedInputStream bis = null;
        try { 
            bis = new BufferedInputStream(new FileInputStream(file));
            OutputStream os = response.getOutputStream();
            int i  ;
            while ((i=bis.read(buffer)) != -1) { 
                os.write(buffer, 0, i);
            }
            
         } catch (IOException e) { 
            log.warn(" upload file is error .the error msg is :[" + e.getMessage() + "]");
            result = Result.getDefaultError();
            e.printStackTrace();
         } finally { 
            if (bis != null) { 
                try { 
                    bis.close();
                } catch (IOException e) { 
                }
            }
        }
    原文作者:评论有风险,起名需谨慎
    原文地址: https://blog.csdn.net/weixin_43843042/article/details/106840028
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞