Spring Boot Admin 2.x Environment Manager 不显示的问题

Spring Boot Admin是个很不错的针对Spring Boot应用的开源框架,通过actuator可以很方便的监控应用的运行状态、动态的变更全局配置属尾、监控请求等等……

在做项目时,遇到了个问题:不同的应用,Environment Manager节点有可能显示或不显示;后续经过排查后,发现是由options的预检查请求,在某个应用上,被当做跨域请求来处理,没有添加响应头“Allow”导至SBA不显示Environment Manager节点;

查看SBA的前端源码可以看到,Environment Manager节点显不显示,主要是看响应头“Allow”中是否有值并且是否支持post方法,如下:

vue文件:/views/env/index.vue

......
async determineEnvManagerSupport() { 
  try { 
    this.hasEnvManagerSupport = await this.instance.hasEnvManagerSupport(); 
  } catch (error) { 
   console.warn('Determine env manager support failed:', error); 
   this.hasEnvManagerSupport = false; 
  } 
}
......

js文件:/service/instance.js

async hasEnvManagerSupport() {
    const response = await this.axios.options(uri`actuator/env`);
    return response.headers['allow'] && response.headers['allow'].includes('POST');
  }

解决方案:

参考正常显示“Environment Manager”节点的应用,在/actuator/env的请求的响应头“Allow”增加值“DELETE,GET,POST,HEAD”即可;

转载于:https://my.oschina.net/u/3368357/blog/1935125

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值