guyue
2025-07-18 565e8ac5039eb2c7c63695f9e3494ef00cb47185
更改为传json
2个文件已修改
40 ■■■■■ 已修改文件
src/main/java/com/linghu/controller/AuthController.java 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/linghu/utils/OpenCryptUtil.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/linghu/controller/AuthController.java
@@ -56,29 +56,29 @@
            return ResponseEntity.ok("token为空");
        }
        try {
//        try {
            // 解密token
            OpenCryptUtil openCryptUtil = new OpenCryptUtil();
            String decrypt = openCryptUtil.decrypt(token);
            // 处理可能的JSON格式问题
            String cleanedJson = cleanJsonString(decrypt);
            // 使用ObjectMapper解析JSON
            ObjectMapper objectMapper = new ObjectMapper();
            JsonNode root = objectMapper.readTree(cleanedJson);
//            // 处理可能的JSON格式问题
//            String cleanedJson = cleanJsonString(decrypt);
//
//            // 使用ObjectMapper解析JSON
//            ObjectMapper objectMapper = new ObjectMapper();
//            JsonNode root = objectMapper.readTree(cleanedJson);
            // 提取所需字段
            String name = root.get("name").asText();
//            String name = root.get("name").asText();
            return ResponseEntity.ok(name);
        } catch (JsonProcessingException e) {
            // 处理JSON解析异常
            return ResponseEntity.badRequest().body("JSON解析失败: " + e.getMessage());
        } catch (Exception e) {
            // 处理其他异常
            return ResponseEntity.badRequest().body("解析失败: " + e.getMessage());
        }
            return ResponseEntity.ok(decrypt);
//        } catch (JsonProcessingException e) {
//            // 处理JSON解析异常
//            return ResponseEntity.badRequest().body("JSON解析失败: " + e.getMessage());
//        } catch (Exception e) {
//            // 处理其他异常
//            return ResponseEntity.badRequest().body("解析失败: " + e.getMessage());
//        }
    }
    /**
src/main/java/com/linghu/utils/OpenCryptUtil.java
@@ -4,6 +4,7 @@
import cn.afocus.crypt.sign.UserSign;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@@ -36,7 +37,12 @@
            // 调用 open-crypt 的加密方法(根据实际API调整)
            //user转为 json
//            String json = JSON.toJSONString(user);
            return UserSign.gen(user, "fY9tX7vX7qH5bN2cD8eM4xD2fH7uL4xM".getBytes(StandardCharsets.UTF_8));
            String secret ="fY9tX7vX7qH5bN2cD8eM4xD2fH7UL4xM";
            JSONObject geoJSON = new JSONObject();
            geoJSON.put("name",user);
            String token = UserSign.gen(geoJSON.toJSONString(),secret.getBytes(StandardCharsets.UTF_8));
            return token;
//            return UserSign.gen(user, "fY9tX7vX7qH5bN2cD8eM4xD2fH7uL4xM".getBytes(StandardCharsets.UTF_8));
        } catch (Exception e) {
            throw new RuntimeException("加密失败:" + e.getMessage(), e);
        }