(转发) swagger注释API详细说明

 

API详细说明

注释汇总

作用范围API使用位置
对象属性@ApiModelProperty用在出入参数对象的字段上
协议集描述@Api用于controller类上
协议描述@ApiOperation用在controller的方法上
Response集@ApiResponses用在controller的方法上
Response@ApiResponse用在 @ApiResponses里边
非对象参数集@ApiImplicitParams用在controller的方法上
非对象参数描述@ApiImplicitParam用在@ApiImplicitParams的方法里边
描述返回对象的意义@ApiModel用在返回对象类上

@RequestMapping此注解的推荐配置 
value 
method 
produces

示例:

@ApiOperation("信息软删除")
    @ApiResponses({ @ApiResponse(code = CommonStatus.OK, message = "操作成功"),
            @ApiResponse(code = CommonStatus.EXCEPTION, message = "服务器内部异常"),
            @ApiResponse(code = CommonStatus.FORBIDDEN, message = "权限不足") })
    @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "Long", name = "id", value = "信息id", required = true) })
    @RequestMapping(value = "/remove.json", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
    public RestfulProtocol remove(Long id) {
@ApiModelProperty(value = "标题")
private String  title;

@ApiImplicitParam

属性取值作用
paramType 查询参数类型
 path以地址的形式提交数据
 query直接跟参数完成自动映射赋值
 body以流的形式提交 仅支持POST
 header参数在request headers 里边提交
 form以form表单的形式提交 仅支持POST
dataType 参数的数据类型 只作为标志说明,并没有实际验证
 Long 
 String 
name 接收参数名
value 接收参数的意义描述
required 参数是否必填
 true必填
 false非必填
defaultValue 默认值

paramType 示例详解

path

@RequestMapping(value = "/findById1/{id}", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)

@PathVariable(name = "id") Long id

body

  @ApiImplicitParams({ @ApiImplicitParam(paramType = "body", dataType = "MessageParam", name = "param", value = "信息参数", required = true) })
  @RequestMapping(value = "/findById3", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)

  @RequestBody MessageParam param

  提交的参数是这个对象的一个json,然后会自动解析到对应的字段上去,也可以通过流的形式接收当前的请求数据,但是这个和上面的接收方式仅能使用一个(用@RequestBody之后流就会关闭了)

header

  @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "Long", name = "id", value = "信息id", required = true) }) 

   String idstr = request.getHeader("id");
        if (StringUtils.isNumeric(idstr)) {
            id = Long.parseLong(idstr);
        }

Form

@ApiImplicitParams({ @ApiImplicitParam(paramType = "form", dataType = "Long", name = "id", value = "信息id", required = true) })
 @RequestMapping(value = "/findById5", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSO

 

原文地址:https://blog.csdn.net/xupeng874395012/article/details/68946676

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将Swagger整合到ASP.NET MVC项目中,可以按照以下步骤进行操作: 1. 安装Swagger NuGet包:在Visual Studio的NuGet包管理器控制台中,运行以下命令来安装Swagger和相关依赖: ``` Install-Package Swashbuckle ``` 2. 配置Swagger:在`Global.asax.cs`文件中的`Application_Start`方法中,添加以下代码来配置Swagger: ```csharp using System.Web.Http; using Swashbuckle.Application; protected void Application_Start() { // ... // 配置Swagger GlobalConfiguration.Configuration .EnableSwagger(c => { c.SingleApiVersion("v1", "My API"); // API版本和标题 c.IncludeXmlComments(GetXmlCommentsPath()); // 导入XML注释文件 }) .EnableSwaggerUi(); } private static string GetXmlCommentsPath() { return System.String.Format(@"{0}\bin\MyApi.XML", System.AppDomain.CurrentDomain.BaseDirectory); } ``` 3. 添加Swagger注释:在控制器的操作方法上,使用XML注释来描述API的摘要、请求和响应参数等信息。可以使用`///`注释格式或者通过XML文件导入注释。 ```csharp public class MyApiController : ApiController { /// <summary> /// 获取所有数据 /// </summary> /// <returns>数据列表</returns> [HttpGet] public IHttpActionResult Get() { // ... } } ``` 4. 运行项目:启动ASP.NET MVC项目,然后浏览器中访问`/swagger`路径,将会看到自动生成的Swagger UI界面,展示了API的文档和可以进行测试的功能。 通过以上步骤,就可以将Swagger整合到ASP.NET MVC项目中,使得开发人员和团队可以更方便地查看、测试和使用API

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值