我尝试配置official documentation上定义的伪客户端连接超时,但是它不起作用。
该应用只是简单的演示应用。
MyFeign.java
package com.example.demo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
@FeignClient(name = "myFeign", url = "localhost:9047/payroll", configuration = FeignConfig.class)
public interface MyFeign {
@GetMapping(value = "/api/master/{employee_id}")
ResponseEntity<String> disableMasterPayroll(@PathVariable(name = "employee_id") String employeeId);
}
第一次尝试:使用配置类
FeignConfig.java
package com.example.demo;
import org.springframework.context.annotation.Configuration;
import feign.Request;
@Configuration
public class FeignConfig {
public Request.Options feignRequestOptionsCustom() {
return new Request.Options(5000, 5000);
}
}
使用spring doc上定义的application.yml进行第二次尝试(复制粘贴)
feign:
hystrix:
enabled: false
client:
config:
default:
connectTimeout: 5000
readTimeout: 5000
loggerLevel: basic
但没有效果。
在stackoverflow(this,this)上发现了几个问题,但没有一个可以解决。
我没有使用hystrix。这是我的gradle文件
dependencies {
implementation 'org.springframework.cloud:spring-cloud-starter-openfeign'
testImplementation('org.springframework.boot:spring-boot-starter-test') {
exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
}
}
我正在将Boot 2.2与Spring Cloud Hoxton.RELEASE一起使用。 知道如何解决这个问题吗?