美文网首页JWTspringbootswagger · 自动化构建API文档
springboot学习记录之swagger2-jwt开发中遇到

springboot学习记录之swagger2-jwt开发中遇到

作者: _奔波儿灞_ | 来源:发表于2017-09-05 13:49 被阅读937次

    最近开始学习springboot,api doc 使用的是swagger2 ,使用jwt作为api保护。期间遇到的一些问题在这里整理一下,希望能帮到大家。

    JWT是一种用户双方之间传递安全信息的简洁的、URL安全的表述性声明规范。JWT(Json Web Token)作为一个开放的标准(RFC 7519),定义了一种简洁的、自包含的方法用于通信双方之间以Json对象的形式进行安全性信息传递,传递时有数字签名所以信息时安全的,JWT使用RSA公钥密钥的形式进行签名。

    Swagger2,它可以轻松的整合到Spring Boot中,并与Spring MVC程序配合组织出强大RESTful API文档。它既可以减少我们创建文档的工作量,同时说明内容又整合入实现代码中,让维护文档和修改代码整合为一体,可以让我们在修改代码逻辑的同时方便的修改文档说明。另外Swagger2也提供了强大的页面测试功能来调试每个RESTful API。具体效果如下图所示:

    我集成jwt的方式并不和网上很多的filter教程一致,我使用的Interceptor。具体继承教程参考:

    使用JWT设计SpringBoot项目api接口安全服务

    说下问题吧:

    1.创建token是密码设置过于简单,出现java.lang.IllegalArgumentException: secret key byte array cannot be null or empty. 异常

    解决方案:修改密码强度 wlt --> wlt-123

    验证通过。

    这是由于jwt内部参数验证机制导致的问题。

    2.如何解决jwt会将token放在head里,在使用swagger测试的时候并不方便的问题。

    这样展示效果如图:

    总结

    本文主要讲解了本人在SpringBoot项目使用swagger暴露resftul接口并加入JWT维护接口安全性时遇到的问题和解决方案。

    相关文章

      网友评论

        本文标题:springboot学习记录之swagger2-jwt开发中遇到

        本文链接:https://www.haomeiwen.com/subject/jmcxhxtx.html