首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Springfox Swagger提供的Swagger /v2/api-docs中启用CORS headers?

在Springfox Swagger提供的Swagger /v2/api-docs中启用CORS headers,可以通过以下步骤实现:

  1. 首先,需要在Spring Boot应用程序的配置类中添加一个WebMvcConfigurer bean。可以创建一个新的配置类,或者在现有的配置类中添加以下代码:
代码语言:txt
复制
@Configuration
public class SwaggerConfig implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/v2/api-docs")
                .allowedOrigins("*")
                .allowedMethods("GET", "POST", "PUT", "DELETE")
                .allowedHeaders("*")
                .allowCredentials(true)
                .maxAge(3600);
    }
}
  1. 在上述代码中,.addMapping("/v2/api-docs")指定了需要启用CORS headers的Swagger接口路径。如果Swagger的接口路径不是/v2/api-docs,则需要相应地修改。
  2. .allowedOrigins("*")表示允许所有来源的请求访问Swagger接口。如果只允许特定的来源访问,可以将*替换为相应的来源。
  3. .allowedMethods("GET", "POST", "PUT", "DELETE")指定允许的HTTP请求方法。根据实际需求,可以添加或删除其他方法。
  4. .allowedHeaders("*")表示允许所有请求头。如果只允许特定的请求头,可以将*替换为相应的请求头。
  5. .allowCredentials(true)表示允许发送身份验证凭据(如cookies、HTTP认证或客户端SSL证明)的请求访问Swagger接口。如果不需要发送身份验证凭据,可以将true替换为false
  6. .maxAge(3600)指定预检请求的缓存时间(以秒为单位)。可以根据实际需求进行调整。

完成上述步骤后,重新启动应用程序,Swagger /v2/api-docs接口将启用CORS headers,允许跨域访问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

在微服务项目中引入 knife4j

生产环境屏蔽 目前 Springfox-Swagger 以及 Knife4j 提供资源接口包括如下:如果你要用的话,记得白名单放行 资源 说明 /doc.html Knife4j提供文档访问地址 /...v2/api-docs-ext Knife4j提供增强接口地址,自2.0.6 版本后删除 /swagger-resources Springfox-Swagger提供分组接口 /v2/api-docs...Springfox-Swagger提供分组实例详情接口 /swagger-ui.html Springfox-Swagger提供文档访问地址 /swagger-resources/configuration.../ui Springfox-Swagger提供 /swagger-resources/configuration/security Springfox-Swagger提供 当我们部署系统到生产系统,为了接口安全...白名单 最后,放上一些可能需要放行白名单地址: "/doc.html" "/v2/api-docs-ext" "/swagger-resources" "/v2/api-docs" "/swagger-ui.html

2.3K30
  • OpenAPI规范3-Swagger2 美化使用

    Swagger tools提供了多个模块用户构建文档,不同模块拥有不同作用,主模块如下: 1、设计接口 Swagger Editor:一个强大编辑器设计新api或编辑现有的api,它可以直观地呈现您狂妄定义...,并提供实时错误反馈。...于是出现了swagger-ui-layer和Swagger-Bootstrap-UI等框架,其本质仅仅是一个更友好和美观前端UI界面的实现,解析数据来源于 /v2/api-docs,而底层依然依赖于... 0.0.2 需要注意一点是 swagger api 默认地址是/v2/api-docs 所以...}/doc.html 需要注意:swagger封装给出请求地址默认是/v2/api-docs,所以swagger-bootstrap-ui调用后台也是/v2/api-docs,不能带后缀,且需返回json

    6.4K20

    Swagger3.0官方starter诞生,可以扔掉那些野生starter了

    Swagger3.0官方starter诞生,可以扔掉那些野生starter了 swagger介绍 对于 Rest API 来说很重要一部分内容就是文档,Swagger 为我们提供了一套通过代码和注解自动生成文档方法...springfox介绍 由于Spring流行,Marty Pitt编写了一个基于Spring组件swagger-springmvc,用于将swagger集成到springmvc来,而springfox...springfox.documentation.swagger-ui.enabled 参数,可以控制ui展示。 从 Swagger 依赖,我们看到了一个比较有意思概念:openAPI。.../**", "/v2/api-docs", "/v3/api-docs", "/webjars/**" }; httpSecurity.cors()....antMatchers(SWAGGER_WHITELIST).permitAll() 背后swagger地址,你访问v2也成,访问v3也成。

    2.1K31

    微服务引入swagger生成接口json导入到yapi配置方法 数据管理 开启url导入

    微服务引入swagger生成接口json导入到yapi配置方法 数据管理 开启url导入 yapi安装参考 window10 yapi安装 swagger配置 及 Error: getaddrinfo...compile("io.springfox:springfox-swagger2:2.8.0") compile("io.springfox:springfox-swagger-ui:2.8.0...进行查看,同时可以输入接口参数,手动执行简单测试; 进入yapi数据管理页面,通过swagger方式,输入swaggerjson文件对应url:http://{ip}:{port}/{project...Name}/v2/api-docs 执行数据导入操作,:http://127.0.0.1:8080/renren-fast/v2/api-docs 如果该项目存在{project Name}访问路径情况下...启动项目,访问如下地址: http://局域网IP:端口号/swagger-ui.html#/ http://局域网IP:端口号/v2/api-docs 尽量不要使用localhost,如果yapi部署和服务在本机是可以

    12110

    重学Spring系列之Swagger2.0和Swagger3.0

    Swagger 给我们提供了一个全新维护 API 文档方式,下面我们就来了解一下它优点 代码变,文档变。...:http://localhost/swagger-ui.html ,如下: swagger不仅提供了静态接口文档展示,还提供了执行接口方法测试功能。...除了ASCIIDOC之外,还有MARKDOWN和CONFLUENCE_MARKUP from(new URL("http://localhost:8080/v2/api-docs"):指定了生成静态部署文档源头配置...同时标志着Swagger2成为过去式。 SpringFox是 spring 社区维护一个项目(非官方),帮助使用者将 swagger2 集成到 Spring 。...也是用来在 Spring 帮助开发者生成文档,并可以轻松在spring boot中使用 ---- 整合springdoc-openapi 在pom.xml里面去掉springfox,添加如下openapi

    2.1K10

    开源小工具 - swagger API访问代码生成器(jstypescript)

    现在流行前后端分离,后端通常会使用swagger生成api文档,提供给前端同事来调用,一般前端是查看这个文档,根据文档说明编写调用代码。...其实,swagger已经提供了足够多描述信息,我们可以基于swagger直接生成相关调用代码,节省前端时间。...开源地址:swagger-2-ts 实现原理 打开swagger-ui,我们可以看到请求了/v2/api-docs获取api文档信息,其中definitions里是DTO对象定义,paths是API接口列表...代码生成器需要用户提供一些参数,比如swagger地址,代码类型等,Yeoman提供了prompting功能,可以定义prompts,最后可以通过this.props获取用户参数 prompting...程序包会自动将这个url地址replace('swagger-ui.html', 'v2/api-docs')得到swagger-api-docs,然后下载后解析,生成api class 可选生成js

    3.4K60
    领券