JFinal

登录 注册

Swagger初体验,完善参数类型与默认值的注解

背景

        这几天用上大佬分享的Swagger UI,集成后发现了一些问题,被卡住了,经过一番研(百)究(度)后,将大佬的代码完善了下,貌似不错的说.

场景

        登录接口要求前端base64加密后在提交给后台,这就导致Swagger生成的接口无法使用(类型为String的文本框输入密码都是明文的,后台验证不通过)。

        研究了好久,发现有提供一个format参数来约定生成的输入框类型,将大佬提供的代码copy到本地,修改了一番,以支持format。

        然后发现,byte只是约定文本框的输入类型是base64,如果传图片base64的话会变成图片显示...,并不会将输入内容base64转码!此路不通。

blob.png        


    没辙,只好加了个isBase64的字段来进行区分。

    (写完发现以上内容都是没卵用,想删了吧又有点可惜,毕竟打了这么多字,先留着吧-,-)   


成果blob.png

blob.png

blob.png

搞定登录接口,后面的测试才能继续下,先这样咯~


相关资料

JFinal集成SwaggerUI生成接口文档

http://www.jfinal.com/share/347

Swagger-edit 在线编辑器  

http://editor.swagger.io/#/

Swagger从入门到精通

https://www.gitbook.com/book/huangwenchao/swagger/details

修改后的代码 ,已提交git,等待合并

http://git.oschina.net/leeckent/jfinal-swagger

评论

  • 07-13 17:54
    非常好的分享,已收藏、点赞、fork 了项目

    楼主可以试一下 jfinal-java8 的这个版本,已然支持在 action 中直接注入参数,action可以这么来用了:
    public Xxx action(User user, String userName, ...) {
    ....
    }

    这个分支以后会与 jfinal 主分支一起发布到 maven版本库,该分支版本仅在主分支版本中添加了这一个功能,地址在此:
    https://git.oschina.net/jfinal/jfinal/tree/jfinal-java8/
  • 07-14 16:54
    @JFinal 波总疯狂推荐java8分支,只要有人开源项目必定推荐,哈哈哈哈哈
  • 发送