swagger 文件上传以及requestbody参数传递
By:Roy.LiuLast updated:2021-01-04
swagger用来做普通的API测试很方便,在这一篇文章中讲过: http://www.yihaomen.com/article/1831.html, 但在实际开发过程中,经常会有文件上传,或者通过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(); } |
参考资料
From:一号门
Previous:java POI,easyexcel 导入导出文档总结
Next:VUE自定义折叠面板组件-自己造轮子
COMMENTS