作者:Java实用技术

http://mrw.so/4serH9

Swagger用于开发期间前端和后端API上的交流使用,请注意是开发期间也就是开发环境,测试环境也可以使用,但是生产环境就不需要使用了,因为生产环境前端已经和后端打通了就不需要在使用Swagger了,如果生产环境没有关闭Swagger有啥后果?这要看你写的程序的安全性了,一般swagger都是用于公司内部项目,一般安全防护都不高(稍微有点安全性就是加个密码),如果swagger暴露出来只要知道这个地址就能访问的话,那么你的api彻彻底底的暴露出去了,对于一些人能够从api中能够看出一些端倪,从而危害生产环境程序,还有一般swagger中都有一些为了便于开发调试的一些小后门比如一些mock接口,这些接口暴露出去危害非常大。

关闭Swagger有两种方式:

  • 方式一:在Swagger2Config上使用@Profile注解标识,@Profile({"dev","test"})表示在dev和test环境才能访问swagger-ui.html,prod环境下访问不了

  • 方式二:在Swagger2Config上使用@ ConditionalOnProperty注解,@ConditionalOnProperty(name = "swagger.enable", havingValue = "true")表示配置文件中如果swagger.enable =true表示开启。所以只需要在开发环境的配置文件配置为true,生产环境配置为false即可。

@Configuration
@EnableSwagger2
//@Profile({"dev","test"})
@ConditionalOnProperty(name = "swagger.enable", havingValue = "true")
public class Swagger2Config {}

这两种方式我一般使用第一种方式,因为第二种方式还要在每个环境文件中去配置,还要维护此值;Swagger一般用于开发和测试环境,所以直接限制Swagger启用的环境为dev和test即可,这样也不需要再维护配置文件了。

InteliJ IDEA 2019.03.03最新激活jetbrains-agent.jar

1.将jetbrains-agent.jar也放到InteliJ IDEA中的bin目录下。

2.配置VM Options,通过Help菜单 -> Edit Custom VM Options。

在文件中最后一行添加如下配置,如果是Windows电脑就写你自己电脑jetbrains-agent.jar实际放入的绝对路径,如 -javaagent:D:\\\xxx\jetbrains-agent.jar。

-javaagent:/Applications/IntelliJ IDEA.app/Contents/bin/jetbrains-agent.jar

也可以直接编辑idea.vmoptions文件增加-javaagent配置,不过建议使用上面菜单的配置方式。

3.重启IDEA,选择License Server, 输入最新的值为 http://fls.jetbrains-agent.com, 点击Test Connection 或者 Close即可。本方法亲测有效,已经使用了一段时间仍然有效。

听说你在生产环境下还没关闭Swagger2,算你猛相关推荐

  1. Dapper--Google生产环境下的分布式跟踪系统

    Dapper--Google生产环境下的分布式跟踪系统 概述 当代的互联网的服务,通常都是用复杂的.大规模分布式集群来实现的.互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发 ...

  2. SQL Server大负载的生产环境下的性能优化:初识元数据优化

    相信朋友对SQL Server性能调优相关的知识或多或少都有一些了解.虽然说现在NOSQL相关的技术非常的火热,但是RMDB(关系型数据库)与NOSQL是并存的,并且适用在各种的项目中.在一般的企业级 ...

  3. 你知道怎么在生产环境下部署tomcat吗?

    享学课堂特邀作者:老顾 转载请声明出处! 一.前言 小伙伴们在网上看到的很多文章,都是对tomcat的一些介绍,什么配置啊,怎么启动.其实在生产环境中怎么部署,和网上介绍的有很大区别.这篇文章老顾就带 ...

  4. 生产环境下的LAMP环境搭建

    生产环境下的LAMP环境搭建 V20 学习猿地  ww.lmonkey.com 一.LAMP环境介绍 Web服务器的主要功能是提供网上信息浏览服务.所有网页的集合被称为网站,网站也只有发布到网上才能被 ...

  5. 生产环境下JAVA进程高CPU占用故障排查

    感谢原作者 http://blog.chinaunix.net/uid-10449864-id-3463151.html 问题描述: 生产环境下的某台tomcat7服务器,在刚发布时的时候一切都很正常 ...

  6. 生产环境下,oracle不同用户间的数据迁移。第一部分

    :任务名称:生产环境下schema ELON数据迁移至schema TIAN ######################################## 测试一:测试参数 数据泵数据导出: ex ...

  7. 四步法分析定位生产环境下MySQL上千条SQL中的问题所在

    第一步:通过以下两种方式之一来打开慢查询功能 (1)方式一:通过修改mysql的my.cnf文件 如果是5.0或5.1等版本需要增加以下选项: log-slow-queries="mysql ...

  8. 视频生产环境下的音视频解决方案

    随着云剪辑.云导播.音视频生产在线协作的兴起, 生产环境下的音视频处理越发为人所关注.音视频处理在生产环境下,对控制精准性有着更高的要求.从服务端到客户端,精准的时间控制.画面控制都是生产环境音视频和 ...

  9. 【LiveVideoStack线上分享】— 视频生产环境下的音视频解决方案

    随着云剪辑.云导播.音视频生产在线协作的兴起, 生产环境下的音视频处理越发为人所关注.音视频处理在生产环境下,有着更高的控制精准性的要求.从服务端到客户端,精准的时间控制.画面控制都是生产环境音视频和 ...

  10. JAVA生产环境验证_Java生产环境下性能监控与调优详解

    本课程将为你讲解如何在生产环境下对Java应用做性能监控与调优:通过本课程,你将掌握多种性能监控工具应用,学会定位并解决诸如内存溢出.cpu负载飙高等问题:学会线上代码调试,Tomcat.Nginx, ...

最新文章

  1. AGAT|GTF/GFF文件处理工具
  2. MYSQL高可用-Percona XtraDB Cluster
  3. java 动态按钮_java-向片段动态添加按钮
  4. 04737 c++程序设计 第二章 课后程序设计题 第一题
  5. Linux下eclipse中shell脚本编程环境的搭建
  6. UIPageControl 分页
  7. DRmare Audio Converter Mac - DRM音频清除转换工具
  8. textarea只允许上下调节尺寸
  9. 【RRT三维路径规划】基于matlab RRT算法无人机三维路径规划【含Matlab源码 1270期】
  10. 502——错误的网关
  11. Log4J按照不同包名输出日志
  12. pandas学习笔记-DataFrame(2)
  13. 微信小程序weui在线入门教程-WeUi操作反馈-actionsheet弹出式菜单
  14. 计算机学院论文谢辞怎么写,论文致谢:函授毕业论文谢辞怎么写
  15. [附源码]java毕业设计网上点餐系统
  16. 视频剪辑工具,批量给视频添加上下图片
  17. 《Python语言程序设计》王恺 王志 李涛 机械工业出版社 第6章 字符串 课后习题答案【强烈推荐】
  18. python使用手册<5>函数
  19. Android移动应用开发之Viewpage2+fragment实现微信滑动界面的效果
  20. html下拉刷新原理,下拉刷新的基本原理

热门文章

  1. CRI 与 ShimV2:一种 Kubernetes 集成容器运行时的新思路
  2. Android kotlin中配置protobuf
  3. Jersey 2.x 运行项目
  4. 【转】python编写规范——中标软件有限公司测试中心
  5. CentOS 7 最小化安装后的注意事项(一)
  6. Android内存泄露测试
  7. app具体介绍界面-01
  8. 关于5G你所需要知道的一切
  9. 《Redis实战》一2.2 使用Redis实现购物车
  10. 手工删除oracle的方法