我正在使用Spring cloud config Finchley。M8版本,带Spring防尘套2.0.0。释放我注意到/总线/刷新已更改为/总线刷新。但每当我使用post http请求点击url时,它都不起作用。下面是应用程序的一个片段。属性:
spring.cloud.bus.enabled=true
management.endpoints.web.exposure.include=bus-refresh,refresh
management.endpoints.web.base-path=/
此外,我扩展了WebSecurityConfigrerAdapter以添加以下代码片段:
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().requestMatchers(EndpointRequest.toAnyEndpoint()).permitAll();
}
这是我尝试测试的url:
post http://localhost:8000/bus-refresh?destination=**:dev
然后我收到了以下错误消息
{
"timestamp": "2018-03-18T07:03:54.135+0000",
"status": 403,
"error": "Forbidden",
"message": "Forbidden",
"path": "/bus-refresh"
}
另外,这里是pom中依赖项的一个片段。xml:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<spring-cloud.version>Finchley.M8</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-monitor</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-stream-rabbit</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
<dependency>
<groupId>com.rabbitmq</groupId>
<artifactId>amqp-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security.oauth.boot</groupId>
<artifactId>spring-security-oauth2-autoconfigure</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.retry</groupId>
<artifactId>spring-retry</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.integration</groupId>
<artifactId>spring-integration-amqp</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-properties-migrator</artifactId>
</dependency>
</dependencies>
有什么帮助吗?
注意:我在Spring1.5.6中使用的是旧版本的SpringCloud,它工作得很好,当我使用最新的SpringCloud版本迁移到SpringBoot2时,我遇到了这个问题。
尝试以下方法解决您的问题:
spring-boot 2.0.1.RELEASE
spring-cloud-bus 2.0.0.RC1
management:
endpoints:
web:
exposure:
include: bus-refresh,refresh
base-path: /
我找到了解决我的问题的方法,它是关于安全性的。简单地说,我用额外的两行修改了WebSecurityConfigrerAdapter中的配置方法。它就像以下片段:
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().requestMatchers(EndpointRequest.toAnyEndpoint()).permitAll();
http.csrf().disable();
http.httpBasic().disable();
}
我使用的是Spring Boot v2。5.2微服务并尝试动态刷新endpoint。我正在使用Spring Cloud API Gateway并实现了安全性,现在当我http://localhost:8012/actuator/busrefresh,我看到只有Spring Cloud API gateway反映了这些变化,但其他微服务没有。 我们如何修复它? Spring Cloud API网关
我的Spring云配置客户端依赖于Spring。云起动机。公共汽车amqp,但它仍然没有启用总线/刷新endpoint 我在配置客户端应用程序中有这些依赖项,但仍然没有启用总线/刷新、总线/环境。 请让我知道我的客户申请中缺少什么。 注: 我尝试在应用程序中设置这些指标。yml或应用程序。属性,因为这些属性由总线自动配置用来启用endpoint。 在我的Spring Cloud Config Se
我已经用config server和github支持的外部配置文件配置了我的应用程序。当我在cloud foundry中有一个应用程序实例时,它工作得很好。 但对于多个实例,据说要实现spring云总线,以将外部配置更改应用于所有实例。为此,我将配置服务器与Pivotal Cloud foundry上可用的rabbit MQ实例绑定。增加了Spring。云起动机。公共汽车我的构建中的amqp ja
我发现Spring Cloud总线不支持在Spring Cloud版本2020.0.0上对/执行器/总线刷新的POST请求。当我尝试发送它时,我收到405“方法不允许”。是否有任何方法可以在不使用/monitor和git webhooks或降级Spring云版本的情况下自动刷新所有客户端服务的配置? 我已经包括了spring cloud starter总线amqp和spring boot star
我有一个使用Spring云配置和Spring云总线的配置服务器,还有一些客户端也有Spring云总线。每次更改配置时,我都使用postman向配置服务器发送/总线/刷新。我找到了两种方法: 刷新特定客户端:http://localhost/bus/refresh/app1:dev:8080 刷新所有客户端:http://localhost/bus/refresh 有没有办法用一个post请求刷新两
使用spring-Cloud网关2.0.0. M5,我在配置文件(application.yml)中定义路由。我试图通过调用POST来更新这些路由 /application/gateway/refresh. 修改后的路由或新路由不会被刷新,即使我看到(带有断点)实际上执行了刷新例程。 当在配置文件中定义路由时,刷新应该工作吗?我错过了什么? 用例是在spring配置服务器中定义的路由。