我在加载Swagger UI/启用UIendpoint时遇到了一个问题。Maven项目,Jersey版本-2.12,Swagger版本-1.5.1-m2
我有一个通过编程配置的jersey web应用程序。在我的ResourceConfig(扩展)中,我为Swagger设置了以下内容:
beanConfig = new BeanConfig(); beanConfig.setVersion("1.0.0"); beanConfig.setHost("http:localhost:8080"); beanConfig.setBasePath("/app/v1"); beanConfig.setResourcePackage("com.app.features"); beanConfig.setScan(true); register(beanConfig); register(new ApiListingResourceJSON()); register(new SwaggerSerializers());
public class Bootstrap extends HttpServlet {
@Override
public void init(ServletConfig config) throws ServletException {
Info info = new Info()
.title("Swagger Sample App")
.description("Desc")
.termsOfService("http://helloreverb.com/terms/")
.contact(new Contact()
.email("apiteam@swagger.io"))
.license(new License()
.name("Apache 2.0")
.url("http://www.apache.org/licenses/LICENSE-2.0.html"));
ServletContext context = config.getServletContext();
Swagger swagger = new Swagger().info(info);
context.setAttribute("swagger", swagger);
}
}
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Bootstrap</servlet-name>
<servlet-class>com.app.Bootstrap</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
我已经将Swagger UI dist的内容复制到我的web应用程序文件夹中。
当我点击http://localhost:8080/app/v1/swagger.json上的api jsonendpoint时,我确实得到了json代码,例如:
{"swagger":"2.0","info":{"version":"1.0.0"},"host":"http:localhost:8080","basePath":"/app/v1"}
但是,我似乎没有在我期望的路径上看到昂首阔步的UI(http://localhost:8080/app/v1或http://localhost:8080/app/v1/app/v1/index.html)。
您需要下载swagger-ui web project,并将其放在web目录中,然后在index.html
中配置api地址,
index.html
:
<script type="text/javascript">
$(function () {
var url = window.location.search.match(/url=([^&]+)/);
if (url && url.length > 1) {
url = decodeURIComponent(url[1]);
} else {
url = "http://petstore.swagger.io/v2/swagger.json"; //your api address
}
window.swaggerUi = new SwaggerUi({
url: url,
现在您可以通过访问http://ip:port/path/swagger-ui/index.html
来访问swagger-ui
。
我使用Swagger生成了JAX-RS服务器代码,该代码使用以下命令运行: 现在,服务器的目的之一是在ElasticSearch中索引POST请求。但是,在pom中添加弹性搜索高级rest客户端会使服务器在启动时中断。请参阅底部的错误消息。 我还会在底部附上POM文件的内容。 底部附加的Maven依赖项树。 根据Joakim Erdfelt的建议,我尝试将javax-servlet更改为3.1版和
我正在尝试使用 https://github.com/swagger-api/swagger-codegen 生成 nodejs 客户端 sdk 这是我使用的命令 但是对于我需要生成的实际sdk,swagger规范被拆分为两个不同的json文件,我想为两者创建一个sdk。我如何使用Swagger-codecen做到这一点,同时使用多个swagger json?
我对JOOQ框架(3.13.4)以及Spring Boot和Java8有问题。 问题是我试图使用java代码方式生成域类(而不是使用带有maven的codegen插件,这在自定义命名策略提供程序方面遇到了一些麻烦)。因此,首先让我向您展示包含(至少我相信它包含)所有必要bean的@Configuration类: 可路由数据源是一种扩展抽象路由数据源的类型,因为在这种情况下,我需要有可能在运行时更改
我使用硒网格(在4个浏览器上运行测试:FF13、FF16、IE9和chrome。每个浏览器都在不同的机器上。在测试的相关部分,我找到一个可点击的元素并单击它。在FF13、IE9和chrome上,它工作得很好:元素被找到并被点击。在FF16上,找到了该元素,并且webdrier“声称”它点击了它,但按钮的动作(改变页面上表格的布局)不会发生。 注意:我使用版本2.25谢谢,Tizki
在我的Net 6 Web-API项目中,我使用了OData和Swagger(它是在项目创建时自动添加的)。 它可以开箱即用,但Swagger生成的一些URL存在问题。 这是我的OData控制器: SwaggerUI输出: 当我试图从Swagger运行通过Id获取实体的查询时,由于错误的url而失败。 由于某种原因,Swagger生成查询参数和URL,如上图所示。对于OData,URL必须是这样的(
支持在项目中使用 Swagger 注解语法,运行命令,生成 Swagger 文件。 Swagger 是最流行的 API 开发工具,它遵循 OpenAPI Specification(OpenAPI 规范,也简称 OAS)。 Swagger 可以贯穿于整个 API 生态,如 API 的设计、编写 API 文档、测试和部署。 Swagger 是一种通用的,和编程语言无关的 API 描述规范。 imi-