zoukankan      html  css  js  c++  java
  • swagger 文件上传以及requestbody参数传递

    swagger用来做普通的API测试很方便,在实际开发过程中,经常会有文件上传,或者通过reuestbody传递数据等方式. 这个时候swagger的配置就有一些特殊了

    swagger requestbody的配置方式

    @ApiOperation(value = "测试requestBody", notes = "测试requestBody")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType="query", name="userId", value="用户id", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(paramType="body", name = "body",dataType = "string", example = "", required = false)
    })
    @PostMapping(value="/command",produces = {"application/json;charset=UTF-8"})
    public String getHttpInfo(HttpServletRequest request, Integer userId) throws IOException {
        InputStream in = request.getInputStream();
        String requestParams = IOUtils.toString(in);
        // TODO. LOGIC
        return requestParams;
    }

    swagger 文件上传配置方式

    @ApiOperation(value = "测试swagger3上传", notes = "测试swagger3上传")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "file", paramType="form", value = "临时文件", dataType="file", required = true),
            @ApiImplicitParam(name="userId", value="用户ID", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping(value = "/update_avatar")
    public String updateAvatar(Integer userId, @RequestPart("file") MultipartFile file) throws Exception {
        // TOTO. LOGIC.
        return file.getName();
    }

    参考资料

  • 相关阅读:
    迭代器
    装饰器
    函数对象和闭包
    函数的使用
    文件操作
    基本数据类型及内置方法
    MySQL数据库
    网络编程进阶(进程、线程、协程、IO模型)
    网络编程基础---网络通讯原理、ssh远程执行命令、粘包问题处理、文件传输处理
    面向对象、类、元类、封装、异常处理
  • 原文地址:https://www.cnblogs.com/exmyth/p/15470927.html
Copyright © 2011-2022 走看看