嗨,我用swagger UI有问题。我有这个类似的配置文件。Swagger UI CORS配置Java CXF球衣REST API
<bean id="resourceWriter" class="com.wordnik.swagger.jaxrs.listing.ResourceListingProvider" />
<bean id="apiWriter" class="com.wordnik.swagger.jaxrs.listing.ApiDeclarationProvider" />
<bean id="swaggerResourceJSON" class="com.wordnik.swagger.jaxrs.listing.ApiListingResourceJSON" />
<jaxrs:server id="swaggerAPI" address="/swagger">
<jaxrs:serviceBeans>
<ref bean="swaggerResourceJSON"/>
</jaxrs:serviceBeans>
<jaxrs:providers>
<bean class="org.codehaus.jackson.jaxrs.JacksonJsonProvider"/>
<bean class="com.ge.aviation.svc.fss.exception.WebExceptionHandler"/>
<ref bean="resourceWriter"/>
<ref bean="apiWriter"/>
</jaxrs:providers>
</jaxrs:server>
<bean id="swaggerConfig" class="com.wordnik.swagger.jaxrs.config.BeanConfig">
<property name="resourcePackage" value="package.of.my.service"/>
<property name="version" value="1.0.0"/>
<property name="basePath" value="http://localhost:8090/"/>
<property name="title" value="Sample Service"/>
<property name="description" value="Service for storing, searching, and retrieving files."/>
<property name="contact" value="[email protected]"/>
<property name="scan" value="true"/>
</bean>
然后我的服务器运行完美,并且有一个放屁UI的终点。 http://localhost:8095/api/api-docs/
然后我复制这个网址在浏览器中它会显示Json文件。但我已经复制了我的tomcat中的swagger UI dist文件(上面提到的不是同一个服务器)然后添加上面的URL然后IT说Can't read from server. It may not have the appropriate access-control-origin settings
。我发现错误是https://github.com/swagger-api/swagger-ui/issues/146和https://github.com/swagger-api/swagger-ui#cors-support但我想知道如何cors设置ApiListingResourceJSON类,它有API文档的终点。
因此,您不再使用io.swagger.jaxrs.listing.ApiListingResource并实施您的资源吗? –