Pārlūkot izejas kodu

新增上传校验图片内部类型

wuweihao 4 gadi atpakaļ
vecāks
revīzija
8d499177b6

+ 0 - 3
720yun_fd_consumer/src/main/java/com/gis/util/CmdUtils.java

@@ -130,9 +130,6 @@ public class CmdUtils {
             e.printStackTrace();
             e.printStackTrace();
         }
         }
 
 
-
-
-
     }
     }
 
 
 
 

+ 1 - 0
720yun_fd_manage/gis_common/src/main/java/com/gis/common/constant/MsgCode.java

@@ -25,6 +25,7 @@ public class MsgCode {
     /** 素材已使用 */
     /** 素材已使用 */
     public final static Integer e3007 = 3007;
     public final static Integer e3007 = 3007;
 
 
+
     public final static Integer e5003 = 5003;
     public final static Integer e5003 = 5003;
     public final static String m5003 = "不支持此图片";
     public final static String m5003 = "不支持此图片";
 
 

+ 9 - 0
720yun_fd_manage/gis_service/src/main/java/com/gis/service/impl/FodderServiceImpl.java

@@ -2,6 +2,7 @@ package com.gis.service.impl;
 
 
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.img.ImgUtil;
 import cn.hutool.core.img.ImgUtil;
+import cn.hutool.core.io.FileTypeUtil;
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.io.FileUtil;
 import com.gis.common.config.RabbitConfig;
 import com.gis.common.config.RabbitConfig;
 import com.gis.common.constant.CmdConstant;
 import com.gis.common.constant.CmdConstant;
@@ -106,6 +107,14 @@ public class FodderServiceImpl extends IBaseServiceImpl<FodderEntity, Long> impl
                     return Result.failure(MsgCode.e3004, "全景图文件不能超过120MB");
                     return Result.failure(MsgCode.e3004, "全景图文件不能超过120MB");
                 }
                 }
 
 
+                // 次方法可以读取到图片内部结构, 可以检验非全景图
+                String imgType = FileTypeUtil.getType(file.getInputStream());
+                // 全景图只支持jpg图片格式
+                if (!imgType.equalsIgnoreCase("jpg")) {
+                    log.error("图片格式错误,只支持jpg图片类型, type: " + imgType);
+                    return Result.failure(MsgCode.e5003, "只支持jpg图片类型, 真实格式是:" + imgType);
+                }
+
                 String sceneCode = RandomUtils.getSceneCode("fd720_");
                 String sceneCode = RandomUtils.getSceneCode("fd720_");
                 newName = sceneCode+"." + suffix;
                 newName = sceneCode+"." + suffix;
                 savePath =savePath + sceneCode + "/" + newName;
                 savePath =savePath + sceneCode + "/" + newName;