diff --git a/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger3Config.java b/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger3Config.java
index 64e6f3fa6..1878b5827 100644
--- a/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger3Config.java
+++ b/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger3Config.java
@@ -10,6 +10,7 @@ import io.swagger.v3.oas.models.security.SecurityRequirement;
import io.swagger.v3.oas.models.security.SecurityScheme;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.constant.CommonConstant;
+import org.springdoc.core.customizers.GlobalOpenApiCustomizer;
import org.springdoc.core.filters.GlobalOpenApiMethodFilter;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -59,29 +60,29 @@ public class Swagger3Config implements WebMvcConfigurer {
return method -> method.isAnnotationPresent(Operation.class);
}
- //TODO 暂时注释掉,for:【issues/8638】springboot3分支,knife4j不能正确显示文档,但是swagger-ui和v3/api-docs正常 #8638
-// @Bean
-// public GlobalOpenApiCustomizer globalOpenApiCustomizer() {
-// return openApi -> {
-// // 全局添加鉴权参数
-// if (openApi.getPaths() != null) {
-// openApi.getPaths().forEach((path, pathItem) -> {
-// //log.debug("path: {}", path);
-// // 检查当前路径是否在排除列表中
-// boolean isExcluded = excludedPaths.stream().anyMatch(
-// excludedPath -> excludedPath.equals(path) || (excludedPath.endsWith("**") && path.startsWith(excludedPath.substring(0, excludedPath.length() - 2)))
-// );
-//
-// if (!isExcluded) {
-// // 接口添加鉴权参数
-// pathItem.readOperations().forEach(operation ->
-// operation.addSecurityItem(new SecurityRequirement().addList(CommonConstant.X_ACCESS_TOKEN))
-// );
-// }
-// });
-// }
-// };
-// }
+ @Bean
+ public GlobalOpenApiCustomizer globalOpenApiCustomizer() {
+ return openApi -> {
+ // 全局添加鉴权参数
+ if (openApi.getPaths() != null) {
+ openApi.getPaths().forEach((path, pathItem) -> {
+ //log.info("path: {}", path);
+ // 检查当前路径是否在排除列表中
+ boolean isExcluded = excludedPaths.stream().anyMatch(
+ excludedPath -> excludedPath.equals(path) || (excludedPath.endsWith("**") && path.startsWith(excludedPath.substring(0, excludedPath.length() - 2)))
+ );
+
+ if (!isExcluded) {
+ //log.info(" 接口添加默认X_ACCESS_TOKEN: {}", path);
+ // 接口添加鉴权参数
+ pathItem.readOperations().forEach(operation ->
+ operation.addSecurityItem(new SecurityRequirement().addList(CommonConstant.X_ACCESS_TOKEN))
+ );
+ }
+ });
+ }
+ };
+ }
@Bean
public OpenAPI customOpenAPI() {
@@ -90,11 +91,15 @@ public class Swagger3Config implements WebMvcConfigurer {
.title("JeecgBoot 后台服务API接口文档")
.version("3.8.1")
.contact(new Contact().name("北京国炬信息技术有限公司").url("www.jeccg.com").email("jeecgos@163.com"))
- .description( "后台API接口")
+ .description("后台API接口")
.termsOfService("NO terms of service")
.license(new License().name("Apache 2.0").url("http://www.apache.org/licenses/LICENSE-2.0.html")))
.addSecurityItem(new SecurityRequirement().addList(CommonConstant.X_ACCESS_TOKEN))
.components(new Components().addSecuritySchemes(CommonConstant.X_ACCESS_TOKEN,
- new SecurityScheme().name(CommonConstant.X_ACCESS_TOKEN).type(SecurityScheme.Type.HTTP)));
+ new SecurityScheme()
+ .name(CommonConstant.X_ACCESS_TOKEN)
+ .type(SecurityScheme.Type.APIKEY)
+ .in(SecurityScheme.In.HEADER) // 关键:指定为 header
+ ));
}
}
\ No newline at end of file
diff --git a/jeecg-boot/jeecg-boot-module/jeecg-boot-module-airag/pom.xml b/jeecg-boot/jeecg-boot-module/jeecg-boot-module-airag/pom.xml
index 8210067ca..8c7370b67 100644
--- a/jeecg-boot/jeecg-boot-module/jeecg-boot-module-airag/pom.xml
+++ b/jeecg-boot/jeecg-boot-module/jeecg-boot-module-airag/pom.xml
@@ -151,9 +151,9 @@
- dev.langchain4j
+ org.jeecgframework
langchain4j-pgvector
- ${langchain4j.version}
+ 0.35.0