`
y806839048
  • 浏览: 1121431 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

swagger使用注意的问题

阅读更多

 

swagger使用注意的问题:

 

1,下载的ui和依赖的jar要配套

 

 

2,swagger中index.html配置的地址就是访问接口的地址http://localhost:8081/hb_phonebank_web/v2/api-docs    /api-docs这个结尾(webapp下)

 

 

 

3,只针对 @ResponseBody返回json数据的接口, @RequestMapping(value = { "/update" }, method = RequestMethod.POST,produces="application/json;charset=UTF-8")

 

POST需要参数

 

GET方法中不能加参数(可以用模型驱动)

  • 在GET请求中,不能使用@RequestBody。
  • 在POST请求,可以使用@RequestBody和@RequestParam,但是如果使用@RequestBody,对于参数转化的配置必须统一

 @RequestMapping(value = { "/newApply" }, method = RequestMethod.GET)

    public String prepareNewApplyData(/*@RequestParam String orgId,@RequestParam String loanTermCode,@RequestParam String purposeCode,*/ModelMap map) {

}

 

 @ResponseBody

    @RequestMapping(value = { "/initCustomer" }, method = RequestMethod.GET)

    public String initCustomer(InitCustomerParameter params){

}

 

 

 

    @ResponseBody

    @RequestMapping(value = { "/update" }, method = RequestMethod.POST,produces="application/json;charset=UTF-8")

    @ApiResponses(value = {@ApiResponse(code = 200, message = "商品信息",  response=String.class),

            @ApiResponse(code = 201, message = "q"+ "(token验证失败)",  response=String.class),

            @ApiResponse(code = 202, message = "500" + "(系统错误)",response = String.class)})

    @ApiOperation(value="查询列表",notes="/update",response = String.class)

  

public String update(@RequestBody(required = false) FinancialSalesUser financialSalesUser) throws Exception{}

 

 @ResponseBody

    @RequestMapping(value = { "/list" }, method = RequestMethod.GET,produces="application/json;charset=UTF-8")

    @ApiResponses(value = {@ApiResponse(code = 200, message = "商品信息",  response=String.class),

            @ApiResponse(code = 201, message = "q"+ "(token验证失败)",  response=String.class),

            @ApiResponse(code = 202, message = "500" + "(系统错误)",response = String.class)})

    @ApiOperation(value="查询列表",notes="/list",response = String.class)

    public String getweixinBaseInfoList() {}

 

4,

 

@requestbody

时间不可传:

虽然名称可以一样,但是类型匹配不了springmvc也接受不了(测试数据)

 

 

 

示例:

 

pom.xml

 

<!--swagger -->

<dependency>

<groupId>io.springfox</groupId>

<artifactId>springfox-swagger2</artifactId>

</dependency>

<dependency>

<groupId>io.springfox</groupId>

<artifactId>springfox-swagger-ui</artifactId>

</dependency>

 

spring.xml

 

用一个单独的swagger文件放下载下的ui

 

<mvc:resources mapping="/swagger/**" location="/swagger/"/>

 

<mvc:annotation-driven/>

<bean class="com.houbank.incoming.web.controller.MySwaggerConfig" />

 

 

配置java:

 

package com.houbank.incoming.web.controller;

 

        import org.springframework.context.annotation.Configuration;

        import springfox.documentation.swagger2.annotations.EnableSwagger2;

 

@Configuration

@EnableSwagger2

public class MySwaggerConfig {

}

 

 

 

 

 

 

 

应用;

 

 

@Controller

@Slf4j

@RequestMapping({ "/financialSalesUser" })

@Api(value="/financialSalesUser",description="测试信息")

public class FinancialSalesUserController {

 

    @Reference

    private FinancialSalesUserFacade financialSalesUserFacade;

 

    @ResponseBody

    @RequestMapping(value = { "/list" }, method = RequestMethod.GET,produces="application/json;charset=UTF-8")

    @ApiResponses(value = {@ApiResponse(code = 200, message = "商品信息",  response=String.class),

            @ApiResponse(code = 201, message = "q"+ "(token验证失败)",  response=String.class),

            @ApiResponse(code = 202, message = "500" + "(系统错误)",response = String.class)})

    @ApiOperation(value="查询列表",notes="/list",response = String.class)

    public String getweixinBaseInfoList() {

        String q="";

        try {

//            CoreBusinessType condition = new CoreBusinessType();

//            condition.setTypeName("车抵贷");

            FinancialSalesUserCondition financialSalesUserCondition =new FinancialSalesUserCondition();

            BaseResponse<List<FinancialSalesUser>> baseResponse = financialSalesUserFacade.selectAll(financialSalesUserCondition);

            if (baseResponse != null && CollectionUtils.isNotEmpty(baseResponse.getData())) {

               q= JSON.json(baseResponse.getData());

                log.info(JSON.json(baseResponse.getData()));

//                modelMap.put("coreTypeList", baseResponse.getData());

            }

        } catch (Exception e) {

           log.error("错误"+e);

        }

       

        return q;

    }

//@RequestBody FinancialSalesUser financialSalesUser

    @ResponseBody

    @RequestMapping(value = { "/insert" }, method = RequestMethod.POST,produces="application/json;charset=UTF-8")

    @ApiResponses(value = {@ApiResponse(code = 200, message = "商品信息",  response=String.class),

            @ApiResponse(code = 201, message = "q"+ "(token验证失败)",  response=String.class),

            @ApiResponse(code = 202, message = "500" + "(系统错误)",response = String.class)})

    @ApiOperation(value="查询列表",notes="/insert",response = String.class)

    public String insert(@RequestBody(required = false) FinancialSalesUser financialSalesUser) throws Exception{

        String q="";

        try {

//            CoreBusinessType condition = new CoreBusinessType();

//            condition.setTypeName("车抵贷");

//            FinancialSalesUser financialSalesUser =new FinancialSalesUser();

            if(financialSalesUser==null){

                 financialSalesUser =new FinancialSalesUser();

                financialSalesUser.setPassWord("222");

                financialSalesUser.setStatus("2");

                financialSalesUser.setCreatedTime(new Date());

                financialSalesUser.setUserName("222");

            }

 

            q = financialSalesUserFacade.insert(financialSalesUser)+"";

        } catch (Exception e) {

            log.error("错误"+e);

        }

 

        return q;

    }

 

}

 

 

 

 

 

 

访问:

http://localhost:8081/hb_phonebank_web/swagger/index.html

 

输入:http://localhost:8081/hb_phonebank_web/v2/api-docs   

 

 

 

分享到:
评论

相关推荐

    Swagger 解析器的使用

    Swagger 解析器 注意:如果您正在寻找 swagger-parser 1.X 和 OpenAPI 2.0,请参阅 v1 分支 注意:从 2.1.0 版开始,Swagger Parser 支持 OpenAPI 3.1;详情请参阅此页面

    swagger开启身份认证

    ### swagger开启身份认证 ...虽然这里主要介绍了如何使用Swagger Bootstrap UI来实现这一目标,但在实际项目中,还可以考虑其他方法和技术栈来满足不同的需求。无论采用哪种方式,关键是要确保API的安全性得到保障。

    swagger解决中文缺失使用字体文件

    Swagger是一款广泛使用的API文档工具,它能够自动生成RESTful API接口的文档,便于开发者理解和使用。然而,在处理中文字符时,Swagger默认的字体可能无法显示完整的中文字符集,导致中文缺失或者显示为方框。为了...

    TP5集成swagger

    - Swagger前端则负责将这个JSON文件解析并渲染成易于阅读和使用的文档界面。 #### 二、安装配置Swagger - **安装Swagger UI**: - 访问[Swagger UI GitHub页面](https://github.com/swagger-api/swagger-ui)下载...

    Swagger(weblogic服务启动)

    在使用Swagger的过程中,需要注意的是,由于Swagger是基于Java的,因此必须确保WebLogic服务器与Swagger的兼容性,同时注意版本匹配问题。此外,为了确保API的安全性,可能还需要配置安全控制,如OAuth2认证或其他...

    swagger实现多项目api管理

    为了解决这个问题,我们可以对 Swagger 进行改造,实现多项目 API 的聚合管理。这意味着我们将不同项目中的 API 文档整合到同一个 Swagger UI 中,使得开发、测试和文档编写人员可以在一个统一的界面上查看和操作...

    Swagger,NET4.5版本的

    Swagger是一个流行的API开发工具,主要用于设计、构建、文档化和使用RESTful web服务。在.NET框架中,Swagger可以通过Swashbuckle库实现,这个库为ASP.NET Web API提供了集成Swagger的功能。在这个.NET 4.5版本的...

    swagger官方文档

    在编写API文档时,Swagger官方文档强调基本方法的掌握和实践中需要注意的问题。文档中虽然未具体介绍与Swagger相关的各种开源工具的使用,但提供了核心概念的深入理解和实践指南。 综上所述,Swagger官方文档的知识...

    Swagger接口导出Word.rar

    本教程将围绕如何使用C#和.NET来通过Swagger将接口导出为Word文档进行详解。 首先,你需要在你的项目中引入Swagger。可以通过NuGet包管理器安装`Swashbuckle.AspNetCore`,这将为你的ASP.NET Web API项目添加...

    swagger导出静态API文档工具

    在使用Swagger导出工具时,需要注意以下几点: - **版本兼容性**:确保你的Swagger库版本与你的项目所使用的Spring、JAX-RS或其他框架版本兼容。 - **注解的正确使用**:仔细阅读Swagger注解的文档,确保正确地在...

    Asp.Net WebApi添加SwaggerUI

    这个文件可能是包含集成SwaggerUI过程的详细步骤或者注意事项,通常用于指导开发者快速理解并实施这个过程。 综上所述,将SwaggerUI集成到Asp.Net WebApi项目中,不仅可以提升API的用户体验,还能提高开发效率。...

    Spring Boot整合swagger的使用方法详解教程.docx

    Swagger 提供了一种标准化的方式来描述 RESTful API,使得开发者能够轻松地理解接口的使用方法,并进行在线调试。以下是对如何在 Spring Boot 项目中整合 Swagger 的详细讲解: **一、Swagger 的介绍** Swagger 是...

    swagger2 整合springmvc

    - 注意安全问题,避免将敏感信息暴露在 Swagger UI 中。 - 对于生产环境,可能需要禁用 Swagger UI,防止未经授权的 API 访问。 通过这个简单的示例项目,你可以深入了解 Swagger2 如何与 Spring MVC 结合,为你...

    Swagger详解(SpringBoot Swagger集成).docx

    Swagger 是一个强大的工具,用于构建、管理和维护 RESTful 风格的 Web 服务。它遵循 OpenAPI 规范,提供了...然而,正确配置和管理 Swagger 的注解,以及保持文档与代码的一致性,是使用 Swagger 时需要注意的关键点。

    springboot swagger2 demo

    - 注意处理好安全问题,避免将Swagger2暴露在生产环境中,可以设置允许访问的IP或者关闭 springfox.documentation.swagger.web.SwaggerResourcesProvider。 - Swagger2的注解需要清晰准确,以便于其他开发者理解...

    swaggerui.zip

    Swagger 2是Swagger的升级版,提供了一套完整的工具集,用于设计、构建、记录和使用RESTful Web服务。Swagger的核心是OpenAPI规范,它定义了一个标准的、语言无关的方式来描述API,使得机器和人类都能理解API的结构...

    jmeter接口自动化测试插件swagger转jmeter脚本.zip

    Swagger是一款强大的API设计和文档工具,通过规范化的JSON格式定义API接口,可以自动生成易于理解和使用的API文档。Swagger还支持代码生成和测试,便于开发者快速构建和验证API服务。Swagger UI能够实时展示API接口...

    swagger-parser-2.0.30.zip

    - **版本兼容性**:虽然此版本支持 Swagger 2.0,但要注意与 OpenAPI 3.0 的区别,如果项目使用的是后者,可能需要使用对应的解析器版本。 总之,Swagger Parser 2.0.30 是一个强大的工具,对于管理和操作 Swagger ...

    swagger学习资料

    ### 使用Swagger的注意事项 - **安全考虑**: 在正式环境或生产环境中,为了安全考虑应关闭Swagger。可以通过配置Swagger资源的安全策略,仅允许特定IP或用户访问Swagger UI。 - **节省资源**: 在不需要使用Swagger的...

    springboot集成swagger的demo

    现在,我们可以在接口上使用Swagger的注解来描述接口。比如,使用`@Api`注解标记一个类作为API资源,`@ApiOperation`注解表示接口操作,`@ApiParam`注解描述请求参数: ```java import io.swagger.annotations.Api;...

Global site tag (gtag.js) - Google Analytics