From 5f218cd31dd49b5984b98aab7cea3676109b3146 Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Mon, 2 Sep 2024 15:15:11 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E5=B7=A5=E4=BD=9C=E5=8F=B0):=20?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A8=A1=E6=9D=BF=E9=99=90=E5=88=B6=E5=A4=A7?= =?UTF-8?q?=E5=B0=8F=E5=88=B035MB=E5=90=8C=E6=97=B6=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=A4=A7=E5=B0=8F=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../template/component/DeTemplateImport.vue | 8 +++++++- .../java/io/dataease/jackson/JacksonConfig.java | 16 ++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/core/core-frontend/src/views/template/component/DeTemplateImport.vue b/core/core-frontend/src/views/template/component/DeTemplateImport.vue index fcb9771896..8d0ffa5534 100644 --- a/core/core-frontend/src/views/template/component/DeTemplateImport.vue +++ b/core/core-frontend/src/views/template/component/DeTemplateImport.vue @@ -73,6 +73,7 @@ import { useI18n } from '@/hooks/web/useI18n' const emits = defineEmits(['closeEditTemplateDialog', 'refresh', 'addCategoryInfo']) const { t } = useI18n() const filesRef = ref(null) +const maxImageSize = 35000000 const props = defineProps({ pid: { type: String, @@ -244,7 +245,8 @@ const importTemplate = () => { if (response.data.indexOf('exist') > -1) { ElMessage.warning('当前名称已在模版管理中存在,请修改') } else { - save(state.templateInfo).then(response => { + save(state.templateInfo).then(rsp => { + console.log('====' + JSON.stringify(rsp)) ElMessage.success(t('导入成功')) emits('refresh', getRefreshPInfo()) emits('closeEditTemplateDialog') @@ -258,6 +260,10 @@ const importTemplate = () => { const handleFileChange = e => { const file = e.target.files[0] const reader = new FileReader() + if (file.size > maxImageSize) { + ElMessage.success('模板大小需小于35MB') + return + } reader.onload = res => { const result = res.target.result as string state.importTemplateInfo = JSON.parse(result) diff --git a/sdk/common/src/main/java/io/dataease/jackson/JacksonConfig.java b/sdk/common/src/main/java/io/dataease/jackson/JacksonConfig.java index 5405a28c22..6ce89a4c24 100644 --- a/sdk/common/src/main/java/io/dataease/jackson/JacksonConfig.java +++ b/sdk/common/src/main/java/io/dataease/jackson/JacksonConfig.java @@ -1,8 +1,10 @@ package io.dataease.jackson; import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.core.StreamReadConstraints; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; @@ -23,4 +25,18 @@ public class JacksonConfig { return objectMapper; } + @Bean + public Jackson2ObjectMapperBuilderCustomizer customJackson() { + return jacksonObjectMapperBuilder -> { + // 增大最大字符串长度限制到 350000000(或根据需要设置) + StreamReadConstraints constraints = StreamReadConstraints.builder() + .maxStringLength(35000000) // 设置更大的限制值 + .build(); + + jacksonObjectMapperBuilder.postConfigurer(objectMapper -> + objectMapper.getFactory().setStreamReadConstraints(constraints) + ); + }; + } + }