Spring mvc 在spring mvc项目中更改swagger基本路径
我已经在我的Spring mvc 在spring mvc项目中更改swagger基本路径,spring-mvc,swagger,swagger-ui,Spring Mvc,Swagger,Swagger Ui,我已经在我的springmvc项目中配置了Swagger 在web.xml中,我使用了/rest/*进行servlet映射: <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-
springmvc
项目中配置了Swagger
在web.xml中,我使用了/rest/*
进行servlet映射
:
<servlet>
<servlet-name>mvc-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
但的问题是使用swagger ul访问api。斯威格使用http://localhost:8080/
(在我的本地主机中)以访问API
我试图创建swagger.properties文件来更改基本路径,但没有成功。
('')
当我将/rest/*
更改为/*
时,Swagger ui工作正常,但由于某些原因,我无法这样做
如何更改swagger基本路径以使其正常工作?如果您已经在localhost:8080/rest/下使用了swagger,我认为您的示例中唯一缺少的是,您可以打开swagger ui index.html文件,查找url参数,并将其更改为公开swagger定义的任何url:
url = "http://localhost:8080/rest/v2/api-docs/swagger.json";
或者确保每当调用swagger ui index.html时,它都有如下内容:
http://localhost:8080/swagger-ui/index.html?url=/rest/v2/api-docs/swagger.json
现在,如果您想更改显示Swagger定义url的路径,可以创建一个从ApiListingResource扩展的类,并覆盖该路径,如下所示:
@Path("/rest/v2/api-docs/swagger.{type:json|yaml}")
public class UMSApiListingResource extends ApiListingResource {
}
注意:我使用的是RestEasy而不是Spring MVC,但应该非常类似。如果您已经在localhost下使用了Swagger:8080/rest/我认为您的示例中缺少的唯一一点是,您可以打开Swagger ui index.html文件,查找url参数,并将其更改为显示招摇过市定义的任何url:
url = "http://localhost:8080/rest/v2/api-docs/swagger.json";
或者确保每当调用swagger ui index.html时,它都有如下内容:
http://localhost:8080/swagger-ui/index.html?url=/rest/v2/api-docs/swagger.json
现在,如果您想更改显示Swagger定义url的路径,可以创建一个从ApiListingResource扩展的类,并覆盖该路径,如下所示:
@Path("/rest/v2/api-docs/swagger.{type:json|yaml}")
public class UMSApiListingResource extends ApiListingResource {
}
注意:我使用的是RestEasy而不是Spring MVC,但应该非常类似。首先确保您使用的是最新版本(撰写本文时为2.4.0)。我注意到这个链接引用了一个非常旧的版本springfox
更新后,可以使用摘要指定路径映射
....
docket.pathMapping("/rest")
...
首先,确保您使用的是最新版本(撰写本文时为2.4.0)。我注意到这个链接引用了一个非常旧的版本springfox
更新后,可以使用摘要指定路径映射
....
docket.pathMapping("/rest")
...