diff --git a/deploy/litemall/application.yml b/deploy/litemall/application.yml
index 0d9eb679..a3b9d922 100644
--- a/deploy/litemall/application.yml
+++ b/deploy/litemall/application.yml
@@ -142,4 +142,7 @@ litemall:
endpoint: http://pd5cb6ulu.bkt.clouddn.com
accessKey: 111111
secretKey: xxxxxx
- bucketName: litemall
\ No newline at end of file
+ bucketName: litemall
+
+swagger:
+ production: true
\ No newline at end of file
diff --git a/doc/api.md b/doc/api.md
index e6a285d6..fdaa4a23 100644
--- a/doc/api.md
+++ b/doc/api.md
@@ -439,11 +439,26 @@ API应该存在版本控制,以保证兼容性。
造成代码不是很简洁。特别是具备代码属性的注解和Swagger文档注解混杂在一起,可能不是很好。
当然,本项目也简单地配置了Swagger(见`WxSwagger2Configuration`和`AdminSwagger2Configuration`),
-在线Swagger文档链接:http://122.51.199.160:8080/swagger-ui.html
+* 在线Swagger文档链接:http://122.51.199.160:8080/swagger-ui.html
+* 本地Swagger文档链接:http://localhost:8080/swagger-ui.html
+
+此外,也使用了swagger-bootstrap-ui对Swagger进一步增强了使用效果。
+* 在线swagger-bootstrap-ui文档链接:http://122.51.199.160:8080/doc.html
+* 本地swagger-bootstrap-ui文档链接:http://localhost:8080/doc.html
当然正如上文讨论,本项目不是很接受Swagger的理念,所以后端没有使用Swagger的相关文档注解,
这也导致了Swagger接口文档的不具可读性。如果开发者需要,可以自行在后端补充Swagger注解。
+需要注意的是:
+> 这里接口默认是公开的,因此项目一旦需要上线,请及时删除swagger和swagger-bootstrap-ui依赖和配置,
+> 或者采取其他手段,防止接口对外暴露造成**安全隐患**。
+
+例如
+```
+swagger:
+ production: false
+```
+
## 2 商城API服务
### 2.1 安全服务
diff --git a/docker/litemall/application.yml b/docker/litemall/application.yml
index 2be1cde8..a28dd8b5 100644
--- a/docker/litemall/application.yml
+++ b/docker/litemall/application.yml
@@ -142,4 +142,7 @@ litemall:
endpoint: http://pd5cb6ulu.bkt.clouddn.com
accessKey: 111111
secretKey: xxxxxx
- bucketName: litemall
\ No newline at end of file
+ bucketName: litemall
+
+swagger:
+ production: true
\ No newline at end of file
diff --git a/litemall-admin-api/pom.xml b/litemall-admin-api/pom.xml
index 564a85e2..5afd40cc 100644
--- a/litemall-admin-api/pom.xml
+++ b/litemall-admin-api/pom.xml
@@ -40,6 +40,11 @@
org.apache.shiro
shiro-spring-boot-web-starter
+
+ com.github.xiaoymin
+ swagger-bootstrap-ui
+ 1.9.6
+
diff --git a/litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/config/AdminSwagger2Configuration.java b/litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/config/AdminSwagger2Configuration.java
index b3027ff3..e16ba1ba 100644
--- a/litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/config/AdminSwagger2Configuration.java
+++ b/litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/config/AdminSwagger2Configuration.java
@@ -1,7 +1,9 @@
package org.linlinjava.litemall.admin.config;
+import com.github.xiaoymin.swaggerbootstrapui.annotations.EnableSwaggerBootstrapUI;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
@@ -20,6 +22,7 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
+@EnableSwaggerBootstrapUI
public class AdminSwagger2Configuration {
@Bean
public Docket adminDocket() {
diff --git a/litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/config/ShiroConfig.java b/litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/config/ShiroConfig.java
index 6630da53..18b9b257 100644
--- a/litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/config/ShiroConfig.java
+++ b/litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/config/ShiroConfig.java
@@ -33,13 +33,7 @@ public class ShiroConfig {
filterChainDefinitionMap.put("/admin/auth/401", "anon");
filterChainDefinitionMap.put("/admin/auth/index", "anon");
filterChainDefinitionMap.put("/admin/auth/403", "anon");
- filterChainDefinitionMap.put("/admin/index/index", "anon");
- filterChainDefinitionMap.put("/swagger-ui.html", "anon");
- filterChainDefinitionMap.put("/swagger-resources", "anon");
- filterChainDefinitionMap.put("/swagger-resources/configuration/security", "anon");
- filterChainDefinitionMap.put("/swagger-resources/configuration/ui", "anon");
- filterChainDefinitionMap.put("/v2/api-docs", "anon");
- filterChainDefinitionMap.put("/webjars/springfox-swagger-ui/**", "anon");
+ filterChainDefinitionMap.put("/admin/index/*", "anon");
filterChainDefinitionMap.put("/admin/**", "authc");
shiroFilterFactoryBean.setLoginUrl("/admin/auth/401");
diff --git a/litemall-admin-api/src/main/resources/application.yml b/litemall-admin-api/src/main/resources/application.yml
index 1b40f0ba..d3ca4367 100644
--- a/litemall-admin-api/src/main/resources/application.yml
+++ b/litemall-admin-api/src/main/resources/application.yml
@@ -13,4 +13,7 @@ logging:
org.springframework: ERROR
org.mybatis: ERROR
org.linlinjava.litemall.admin: DEBUG
- org.linlinjava.litemall: ERROR
\ No newline at end of file
+ org.linlinjava.litemall: ERROR
+
+swagger:
+ production: false
\ No newline at end of file
diff --git a/litemall-all/src/main/resources/application.yml b/litemall-all/src/main/resources/application.yml
index f414da94..6caba810 100644
--- a/litemall-all/src/main/resources/application.yml
+++ b/litemall-all/src/main/resources/application.yml
@@ -16,4 +16,7 @@ server:
mime-types: application/javascript,text/css,application/json,application/xml,text/html,text/xml,text/plain
logging:
- config: classpath:logback-spring.xml
\ No newline at end of file
+ config: classpath:logback-spring.xml
+
+swagger:
+ production: false
\ No newline at end of file
diff --git a/litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/config/WxSwagger2Configuration.java b/litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/config/WxSwagger2Configuration.java
index 893ed341..f7a8b6aa 100644
--- a/litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/config/WxSwagger2Configuration.java
+++ b/litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/config/WxSwagger2Configuration.java
@@ -1,5 +1,6 @@
package org.linlinjava.litemall.wx.config;
+import com.github.xiaoymin.swaggerbootstrapui.annotations.EnableSwaggerBootstrapUI;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
@@ -20,6 +21,7 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
+@EnableSwaggerBootstrapUI
public class WxSwagger2Configuration {
@Bean
public Docket wxDocket() {
diff --git a/litemall-wx-api/src/main/resources/application.yml b/litemall-wx-api/src/main/resources/application.yml
index 98362c18..8e1cb859 100644
--- a/litemall-wx-api/src/main/resources/application.yml
+++ b/litemall-wx-api/src/main/resources/application.yml
@@ -13,4 +13,7 @@ logging:
org.springframework: ERROR
org.mybatis: ERROR
org.linlinjava.litemall.wx: DEBUG
- org.linlinjava.litemall: ERROR
\ No newline at end of file
+ org.linlinjava.litemall: ERROR
+
+swagger:
+ production: false
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 41f68213..6f01efc4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -159,14 +159,14 @@
com.github.xiaoymin
swagger-bootstrap-ui
- 1.9.3
+ 1.9.6
com.google.guava
guava
25.1-jre
-
+
com.auth0
java-jwt