From c46864bbb6818b418111e989d08ccb1ac514a6ab Mon Sep 17 00:00:00 2001 From: xiongxiaoyang <1179705413@qq.com> Date: Fri, 13 Sep 2024 22:48:00 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=20HTTP=20=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E5=92=8C=E5=93=8D=E5=BA=94=E7=9A=84=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 +++ .../novel/core/config/LogbookConfig.java | 37 +++++++++++++++++++ src/main/resources/application.yml | 17 ++++++++- src/main/resources/logback-spring.xml | 4 ++ 4 files changed, 62 insertions(+), 2 deletions(-) create mode 100644 src/main/java/io/github/xxyopen/novel/core/config/LogbookConfig.java diff --git a/pom.xml b/pom.xml index 75139fd..6a249b6 100644 --- a/pom.xml +++ b/pom.xml @@ -25,6 +25,7 @@ 3.19.1 3.0.0-M1 2.5.0 + 3.9.0 @@ -204,6 +205,11 @@ org.flywaydb flyway-mysql + + org.zalando + logbook-spring-boot-starter + ${logbook.version} + diff --git a/src/main/java/io/github/xxyopen/novel/core/config/LogbookConfig.java b/src/main/java/io/github/xxyopen/novel/core/config/LogbookConfig.java new file mode 100644 index 0000000..f6cf01a --- /dev/null +++ b/src/main/java/io/github/xxyopen/novel/core/config/LogbookConfig.java @@ -0,0 +1,37 @@ +package io.github.xxyopen.novel.core.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.zalando.logbook.Logbook; + +import static org.zalando.logbook.core.Conditions.*; + +/** + * Logbook 配置 + * + * @author xiongxiaoyang + * @date 2024/9/13 + */ +@Configuration +public class LogbookConfig { + + @Bean + public Logbook logbook() { + return Logbook.builder() + .condition(exclude( + // 忽略 OPTIONS 请求 + requestWithMethod("OPTIONS"), + // 忽略 /actuator 以及其子路径(Spring Boot Actuator 提供的端点)的请求 + requestTo("/actuator/**"), + // 忽略 Swagger 文档路径 + requestTo("/swagger-ui/**"), + requestTo("/v3/api-docs/**"), + // 忽略二进制文件请求 + contentType("application/octet-stream"), + // 忽略文件上传请求 + contentType("multipart/form-data") + )) + .build(); + } + +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index a91d118..aea10e4 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -30,7 +30,7 @@ server: --- #---------------------数据库配置--------------------------- spring: datasource: - url: jdbc:mysql://localhost:3306/novel_test?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai + url: jdbc:mysql://localhost:3306/novel?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai username: root password: test123456 # ShardingSphere-JDBC 配置 @@ -229,6 +229,19 @@ spring: class: javax.net.ssl.SSLSocketFactory fallback: false +--- #----------------------Logbook配置----------------------------- +logbook: + format: + # 输出格式 + style: http + obfuscate: + headers: + # 隐藏 Authorization 头信息 + - Authorization + parameters: + # 隐藏密码参数 + - password + --- #---------------------自定义配置---------------------------- novel: # 跨域配置 @@ -237,7 +250,7 @@ novel: allow-origins: - http://localhost:1024 - http://localhost:8080 - # JWT密钥 + # JWT 密钥 jwt: secret: E66559580A1ADF48CDD928516062F12E # XSS 过滤配置 diff --git a/src/main/resources/logback-spring.xml b/src/main/resources/logback-spring.xml index a7883d6..f2e9d9f 100644 --- a/src/main/resources/logback-spring.xml +++ b/src/main/resources/logback-spring.xml @@ -62,6 +62,10 @@ + + + +