refactor: 重构安全架构,提取通用安全模块到common-security
- 将JwtAuthenticationFilter、JwtUtil、JwtProperties从auth服务移至common-security模块 - 新增common-security通用安全模块,提供JWT认证、权限验证等核心安全功能 - 重命名SecurityConfiguration为AuthSecurityConfiguration,使用common-security的filter - 新增JacksonConfiguration配置类,统一JSON序列化配置 - 新增头像更新功能AvatarUpdateRequestDTO - 移除冗余的UserLoginResponseDTO类 - 更新各服务模块的依赖配置以引入common-security模块 - 新增README.md项目说明文档 Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -69,5 +69,13 @@
|
||||
<artifactId>spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-actuator</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>cn.hutool</groupId>
|
||||
<artifactId>hutool-crypto</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
|
||||
@@ -8,7 +8,9 @@ import cn.meowrain.aioj.backend.framework.core.web.Results;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.media.Content;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
@@ -28,16 +30,20 @@ import java.util.List;
|
||||
public class AttachmentController {
|
||||
|
||||
private final AttachmentService attachmentService;
|
||||
|
||||
@Operation(summary = "通用文件上传组件")
|
||||
@PostMapping("/upload")
|
||||
public Result<AttachmentDO> uploadFile(@RequestParam("file") MultipartFile file,
|
||||
public Result<AttachmentDO> uploadFile(@Parameter(description = "上传的文件",
|
||||
content = @Content(mediaType = MediaType.MULTIPART_FORM_DATA_VALUE))
|
||||
@RequestParam("file") MultipartFile file,
|
||||
@Parameter(description = "文件哈希值")
|
||||
@RequestParam(value = "hash", required = false) String hash) {
|
||||
return Results.success(attachmentService.upload(file, hash));
|
||||
}
|
||||
|
||||
@Operation(summary = "哈希是否存在")
|
||||
@GetMapping("/check")
|
||||
public Result<HashCheckRespDTO> checkHash(@RequestParam("hash") String hash) {
|
||||
public Result<HashCheckRespDTO> checkHash(@Parameter(description = "文件哈希值") @RequestParam("hash") String hash) {
|
||||
return Results.success(attachmentService.checkHash(hash));
|
||||
}
|
||||
|
||||
|
||||
@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.ToString;
|
||||
|
||||
@@ -8,7 +8,7 @@ spring:
|
||||
max-file-size: 500MB
|
||||
max-request-size: 500MB
|
||||
server:
|
||||
port: 10013
|
||||
port: 18066
|
||||
servlet:
|
||||
context-path: /api
|
||||
error:
|
||||
|
||||
Reference in New Issue
Block a user