From 4e39ce468f2e193b9bc6bd45e33a589c20b78fc4 Mon Sep 17 00:00:00 2001 From: txk <1754875134@qq.com> Date: Wed, 21 May 2025 10:21:07 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=AF=86=E9=80=BB=E8=BE=91=E7=A7=BB?= =?UTF-8?q?=E5=88=B0save=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../magicapi/core/service/MagicResourceStorage.java | 4 +--- .../ssssssss/magicapi/core/web/MagicResourceController.java | 6 +++++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/magic-api/src/main/java/org/ssssssss/magicapi/core/service/MagicResourceStorage.java b/magic-api/src/main/java/org/ssssssss/magicapi/core/service/MagicResourceStorage.java index f682d5ee..43e9d24c 100644 --- a/magic-api/src/main/java/org/ssssssss/magicapi/core/service/MagicResourceStorage.java +++ b/magic-api/src/main/java/org/ssssssss/magicapi/core/service/MagicResourceStorage.java @@ -4,7 +4,6 @@ import org.ssssssss.magicapi.core.resource.Resource; import org.ssssssss.magicapi.core.model.MagicEntity; import org.ssssssss.magicapi.core.service.MagicResourceService; import org.ssssssss.magicapi.utils.JsonUtils; -import org.ssssssss.magicapi.utils.ROT13Utils; import java.nio.charset.StandardCharsets; @@ -40,8 +39,7 @@ public interface MagicResourceStorage { } default T read(byte[] bytes) { - String encrypt = new String(bytes, StandardCharsets.UTF_8); - String content = ROT13Utils.decrypt(encrypt); + String content = new String(bytes, StandardCharsets.UTF_8); if (requiredScript()) { String separator = separatorWithCRLF; int index = content.indexOf(separator); diff --git a/magic-api/src/main/java/org/ssssssss/magicapi/core/web/MagicResourceController.java b/magic-api/src/main/java/org/ssssssss/magicapi/core/web/MagicResourceController.java index 7e2c6a3f..1dd1c965 100644 --- a/magic-api/src/main/java/org/ssssssss/magicapi/core/web/MagicResourceController.java +++ b/magic-api/src/main/java/org/ssssssss/magicapi/core/web/MagicResourceController.java @@ -12,8 +12,10 @@ import org.ssssssss.magicapi.core.service.MagicDynamicRegistry; import org.ssssssss.magicapi.core.service.MagicResourceService; import org.ssssssss.magicapi.core.servlet.MagicHttpServletRequest; import org.ssssssss.magicapi.utils.IoUtils; +import org.ssssssss.magicapi.utils.ROT13Utils; import java.io.IOException; +import java.nio.charset.StandardCharsets; import java.util.*; import java.util.function.Function; @@ -72,12 +74,14 @@ public class MagicResourceController extends MagicController implements MagicExc @ResponseBody public JsonBean saveFile(@PathVariable("folder") String folder, String auto, MagicHttpServletRequest request) throws IOException { byte[] bytes = IoUtils.bytes(request.getInputStream()); + String encrypt = new String(bytes, StandardCharsets.UTF_8); + String decrypt = ROT13Utils.decrypt(encrypt); MagicEntity entity = configuration.getMagicDynamicRegistries().stream() .map(MagicDynamicRegistry::getMagicResourceStorage) .filter(it -> Objects.equals(it.folder(), folder)) .findFirst() .orElseThrow(() -> new InvalidArgumentException(GROUP_NOT_FOUND)) - .read(bytes); + .read(decrypt.getBytes(StandardCharsets.UTF_8)); isTrue(allowVisit(request, Authorization.SAVE, entity), PERMISSION_INVALID); // 自动保存的代码,和旧版代码对比,如果一致,则不保存,直接返回。 if (entity ==null){