Bootstrap

图片上传-规范性防止文件篡改上传脚本文件

HttpServletRequest request = getRequest();
//    	request.getHeader("Content-Disposition");
    	
    	  String fileName = request.getHeader("Content-Disposition");
    	  MyLogUtil.info("Content-Disposition信息:"+fileName);
    	  if (fileName != null && fileName.contains(".")) {
              String extension = fileName.substring(fileName.lastIndexOf('.') + 1);
              boolean isAllowedExtension = "jpg,png".contains(extension.toLowerCase());
              if (!isAllowedExtension) {
                  // 不允许的扩展名,可以在这里处理错误,例如返回错误信息或者返回403禁止访问
//                  response.setStatus(HttpServletResponse.SC_FORBIDDEN);
            	  renderJson(Ret.error("请规范上传图片文件"));
                  return;
              }
          }
    	
    	
    	  UploadFile uploadFile = getFile("filePath");
    	  File file = uploadFile.getFile();
    	  
    	 

    	// 创建Tika实例
    	Tika tika = new Tika();
    	InputStream inputStream = new FileInputStream(file);
    	String mimeType = tika.detect(inputStream);
    	MyLogUtil.info("mimeType信息:"+mimeType);
    	// 检查MIME类型是否安全
    	List<String> allowedMimeTypes = Arrays.asList("image/jpeg", "image/png");

    	if (!allowedMimeTypes.contains(mimeType)) {
    		 renderJson(Ret.error("请规范上传图片文件"));
    		 return;
    	}
    	  
;