lidongdong
2023-07-26 5620defe6501aabf28a39b0c423aee892fc19e88
修改图片上传报错
1个文件已修改
68 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingWestApi.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingWestApi.java
@@ -219,39 +219,57 @@
    @ApiOperation(value = "上传照片")
    @PostMapping(value = "uploadimage", consumes = "multipart/*", headers = "content-type=multipart/form-date")
    public R uploadImage(@RequestParam MultipartFile file, HttpServletRequest request) {
/*
        String name = file.getOriginalFilename();
        List<String> formateList = Arrays.asList("avi", "flv", "mpg", "mpeg", "mpe", "m1v", "m2v", "mpv2", "mp2v",
                "dat", "ts", "tp", "tpr", "pva", "pss", "mp4", "m4v", "m4p", "m4b", "3gp", "3gpp", "3g2", "3gp2", "ogg",
                "mov", "qt", "amr", "rm", "ram", "rmvb", "rpm");
        String nameStr = name.split("\\.")[1];
        if (formateList.contains(nameStr)) {
            name = UUID.randomUUID().toString().replaceAll("-", "") + ".mp4";
        } else {
            name = UUID.randomUUID().toString().replaceAll("-", "") + ".jpg";
        String property = System.getProperty("user.dir");
        String fileExtension = ".jpg";
        SFTPUtil sftp = new SFTPUtil(userName, password, host, port);
        sftp.login();
        String originName = file.getOriginalFilename();
        AtomicBoolean isVideo = new AtomicBoolean(false);
        videoExtensionAllow.forEach(ext -> {
            String originNameLowerCase = originName.toLowerCase();
            if (originNameLowerCase.endsWith("." + ext)) {
                isVideo.set(true);
            }
        });
        if (isVideo.get()) {
            fileExtension = ".mp4";
        }
        if (originName.toLowerCase().endsWith(".mp3")) {
            fileExtension = ".mp3";
        }
        String name = UUID.randomUUID().toString().replaceAll("-", "") + fileExtension;
        try {
            SFTPUtil sftp = new SFTPUtil(userName, password, host, port);
            sftp.login();
            InputStream is = file.getInputStream();
            String fileName =
                    property + File.separator + UUID.randomUUID().toString().replace("-", "") + fileExtension;
            File file1 = new File(fileName);
            file.transferTo(file1);
            boolean delete = file1.delete();
            log.info("临时文件删除【{}】", delete);
            sftp.uploadMore(FtpConstants.FTPFILEPATH_IDCARD, name, is);
            sftp.logout();
            return R.ok(url + "/idcard/" + name);
            String urls=url + "idcard/" + name;
            return R.ok(urls);
        } catch (Exception e) {
            log.error("上传照片失败【{}】", e.getMessage());
            log.error("上传文件失败【{}】", e.getMessage());
            return R.fail();
        }
*/
        try {
            assertAllowed(file, MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION);
            String extension = FilenameUtils.getExtension(file.getOriginalFilename());
            String name = UUID.randomUUID().toString().replaceAll("-", "") + "." + extension;
            String imageUrl = minioUtil.upload(file, name);
            return R.ok(imageUrl);
        } catch (Exception e) {
            log.error("上传照片失败【{}】", e.getMessage());
            return R.fail();
        }
//        try {
//            assertAllowed(file, MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION);
//            String extension = FilenameUtils.getExtension(file.getOriginalFilename());
//            String name = UUID.randomUUID().toString().replaceAll("-", "") + "." + extension;
//            String imageUrl = minioUtil.upload(file, name);
//            return R.ok(imageUrl);
//        } catch (Exception e) {
//            log.error("上传照片失败【{}】", e.getMessage());
//            return R.fail();
//        }
    }