ip_type all时,只有ip非空时,切换默认值
证书模块文件校验 ip掩码验证,非掩码范围增加掩码范围提示 国际化sourse和dest修改为client和server 国际化俄文提交
This commit is contained in:
@@ -49,12 +49,14 @@ public class MultipartFileIntercepter extends CommonsMultipartResolver{
|
||||
boolean isSampleFileUpload = request.getRequestURI().toLowerCase().contains(Constants.SAMPLE_UPLOAD_URL_KEYWORD);
|
||||
//摘要文件URI
|
||||
boolean isDigestFileUpload = request.getRequestURI().toLowerCase().contains(Constants.DIGEST_UPLOAD_URL_KEYWORD);
|
||||
FileUpload fileUpload = this.prepareFileUpload(encoding,isSampleFileUpload,isDigestFileUpload);
|
||||
//证书文件URI
|
||||
boolean isCertFileUpload = request.getRequestURI().toLowerCase().contains(Constants.CERT_UPLOAD_URL_KEYWORD);
|
||||
FileUpload fileUpload = this.prepareFileUpload(encoding,isSampleFileUpload,isDigestFileUpload,isCertFileUpload);
|
||||
long fileUploadTotalSize=0l;
|
||||
Properties languageProp=getMsgProp();
|
||||
MultipartParsingResult multipartParsingResult=null;
|
||||
try {
|
||||
if(isSampleFileUpload || isDigestFileUpload){
|
||||
if(isSampleFileUpload || isDigestFileUpload || isCertFileUpload){
|
||||
/*****************预先获取上传文件的总的大小************/
|
||||
FileUpload fileUploadTotal = fileUpload;
|
||||
ServletRequestContext ctx = new ServletRequestContext(request);
|
||||
@@ -110,6 +112,8 @@ public class MultipartFileIntercepter extends CommonsMultipartResolver{
|
||||
String errorInfo="";
|
||||
String fileTypes="";
|
||||
long fileMaxSize=0l;
|
||||
String privateFileTypes="";
|
||||
long privateFileMaxSize=0l;
|
||||
if(functionId.equals(52)){ //digest
|
||||
fileTypes=Constants.DIGEST_FILE_TYPE;
|
||||
fileMaxSize=Constants.DIGEST_SINGLE_FILE_MAX_SIZE;
|
||||
@@ -134,6 +138,11 @@ public class MultipartFileIntercepter extends CommonsMultipartResolver{
|
||||
}else if(functionId.equals(632)){ //人脸识别
|
||||
fileTypes=Constants.FACE_FILE_TYPE;
|
||||
fileMaxSize=Constants.FACE_SINGLE_FILE_MAX_SIZE;
|
||||
}else if(functionId.equals(570)){ //证书管理
|
||||
fileTypes=Constants.PUBLIC_FILE_TYPE;
|
||||
fileMaxSize=Constants.PUBLIC_SINGLE_FILE_MAX_SIZE;
|
||||
privateFileTypes=Constants.PRIVATE_FILE_TYPE;
|
||||
privateFileMaxSize=Constants.PRIVATE_SINGLE_FILE_MAX_SIZE;
|
||||
}else{
|
||||
return;
|
||||
}
|
||||
@@ -143,13 +152,26 @@ public class MultipartFileIntercepter extends CommonsMultipartResolver{
|
||||
|
||||
for (String fileName : multipartFile.keySet()) {
|
||||
MultipartFile file= multipartFile.getFirst(fileName);
|
||||
//文件类型错误
|
||||
if(fileTypes.indexOf(","+FileUtils.getSuffix(file.getOriginalFilename().toLowerCase(), false)+",") == -1){
|
||||
throw new MultiPartNewException(errorInfo,file.getOriginalFilename(),fileTypes.substring(0,fileTypes.length()-1).substring(1),prop,null);
|
||||
}
|
||||
if(file.getSize() > fileMaxSize){
|
||||
throw new MultiPartNewException(errorInfo, file.getOriginalFilename(), file.getSize(), fileMaxSize,prop, null);
|
||||
//私钥文件校验
|
||||
if(!StringUtil.isEmpty(fileName) && fileName.toLowerCase().equals("privatekeyfilei")){
|
||||
//文件类型错误
|
||||
if(privateFileTypes.indexOf(","+FileUtils.getSuffix(file.getOriginalFilename().toLowerCase(), false)+",") == -1){
|
||||
throw new MultiPartNewException(errorInfo,file.getOriginalFilename(),privateFileTypes.substring(0,privateFileTypes.length()-1).substring(1),prop,null);
|
||||
}
|
||||
if(file.getSize() > privateFileMaxSize){
|
||||
throw new MultiPartNewException(errorInfo, file.getOriginalFilename(), file.getSize(), privateFileMaxSize,prop, null);
|
||||
}
|
||||
//其他文件校验
|
||||
}else{
|
||||
//文件类型错误
|
||||
if(fileTypes.indexOf(","+FileUtils.getSuffix(file.getOriginalFilename().toLowerCase(), false)+",") == -1){
|
||||
throw new MultiPartNewException(errorInfo,file.getOriginalFilename(),fileTypes.substring(0,fileTypes.length()-1).substring(1),prop,null);
|
||||
}
|
||||
if(file.getSize() > fileMaxSize){
|
||||
throw new MultiPartNewException(errorInfo, file.getOriginalFilename(), file.getSize(), fileMaxSize,prop, null);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
/**
|
||||
@@ -158,7 +180,7 @@ public class MultipartFileIntercepter extends CommonsMultipartResolver{
|
||||
* @param isSampleFileUpload
|
||||
* @return
|
||||
*/
|
||||
protected FileUpload prepareFileUpload(String encoding,boolean isSampleFileUpload,boolean isDigestFileUpload) {
|
||||
protected FileUpload prepareFileUpload(String encoding,boolean isSampleFileUpload,boolean isDigestFileUpload,boolean isCertFileUpload) {
|
||||
FileUpload fileUpload = getFileUpload();
|
||||
FileUpload actualFileUpload = fileUpload;
|
||||
if (encoding != null && !encoding.equals(fileUpload.getHeaderEncoding())) {
|
||||
@@ -168,6 +190,8 @@ public class MultipartFileIntercepter extends CommonsMultipartResolver{
|
||||
actualFileUpload.setSizeMax(Constants.SAMPLE_TOTAL_FILE_MAX_SIZE);
|
||||
}else if(isDigestFileUpload){
|
||||
actualFileUpload.setSizeMax(Constants.DIGEST_TOTAL_FILE_MAX_SIZE);
|
||||
}else if(isCertFileUpload){
|
||||
actualFileUpload.setSizeMax(Constants.CERT_TOTAL_FILE_MAX_SIZE);
|
||||
}else{
|
||||
actualFileUpload.setSizeMax(fileUpload.getSizeMax());
|
||||
}
|
||||
|
||||
@@ -514,6 +514,10 @@ public final class Constants {
|
||||
* 摘要文件URL关键字
|
||||
*/
|
||||
public static final String DIGEST_UPLOAD_URL_KEYWORD = Configurations.getStringProperty("digest_upload_url_keyword","fileTransfer");
|
||||
/**
|
||||
* 证书文件URL关键字
|
||||
*/
|
||||
public static final String CERT_UPLOAD_URL_KEYWORD = Configurations.getStringProperty("cert_upload_url_keyword","/intercept/strateagy");
|
||||
/**
|
||||
* 样例文件限制总文件大小
|
||||
*/
|
||||
@@ -578,6 +582,14 @@ public final class Constants {
|
||||
* 摘要文件支持文件类型
|
||||
*/
|
||||
public static final String DIGEST_FILE_TYPE = Configurations.getStringProperty("digest_file_type","");
|
||||
/**
|
||||
* 公钥文件支持文件类型
|
||||
*/
|
||||
public static final String PUBLIC_FILE_TYPE = Configurations.getStringProperty("public_file_type","");
|
||||
/**
|
||||
* 私钥文件支持文件类型
|
||||
*/
|
||||
public static final String PRIVATE_FILE_TYPE = Configurations.getStringProperty("private_file_type","");
|
||||
/**
|
||||
* 摘要文件限制单个文件大小
|
||||
*/
|
||||
@@ -586,7 +598,19 @@ public final class Constants {
|
||||
* 摘要文件限制总文件大小
|
||||
*/
|
||||
public static final long DIGEST_TOTAL_FILE_MAX_SIZE = Configurations.getLongProperty("digest_total_file_max_size",52428800l);//50M
|
||||
/**
|
||||
* 证书文件限制总文件大小
|
||||
*/
|
||||
public static final long CERT_TOTAL_FILE_MAX_SIZE = Configurations.getLongProperty("cert_total_file_max_size",52428800l);//50M
|
||||
|
||||
/**
|
||||
* 公钥文件限制单个文件大小
|
||||
*/
|
||||
public static final long PUBLIC_SINGLE_FILE_MAX_SIZE = Configurations.getLongProperty("public_single_file_max_size",10485760l);//10M
|
||||
/**
|
||||
* 私钥文件限制单个文件大小
|
||||
*/
|
||||
public static final long PRIVATE_SINGLE_FILE_MAX_SIZE = Configurations.getLongProperty("private_single_file_max_size",10485760l);//10M
|
||||
//YSP文件特征配置相关参数,用于调用外部程序生成特征文件时使用
|
||||
public static final String AV_FILE_PATH = Configurations.getStringProperty("av_file_path", "/home/ysp/");
|
||||
public static final String AV_SAMPLE_AUDIO_REGION = Configurations.getStringProperty("av_sample_audio_region", "av_sample_audio");
|
||||
|
||||
Reference in New Issue
Block a user