解密逻辑移到save接口

This commit is contained in:
txk
2025-05-21 10:21:07 +08:00
parent f67b357059
commit 4e39ce468f
2 changed files with 6 additions and 4 deletions

View File

@@ -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<T extends MagicEntity> {
}
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);

View File

@@ -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<String> 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){