【问题标题】:Spring Zuul - throws connection refusedSpring Zuul - 抛出连接被拒绝
【发布时间】:2020-10-17 13:33:56
【问题描述】:

我正在运行一个简单的示例来尝试使用 Zuul,我现在只想将我的呼叫重定向到 google。

为此,我创建了一个应用程序并使用@EnableZuulProxy 进行注释:

import org.springframework.boot.autoconfigure.SpringBootApplication
import org.springframework.boot.runApplication
import org.springframework.cloud.netflix.zuul.EnableZuulProxy

@EnableZuulProxy
@SpringBootApplication
class MyApp

fun main(args: Array<String>) {
    runApplication<MyApp>(*args)
}

我在/resources 中定义了一个application.properties:

hystrix.command.default.execution.timeout.enabled: false
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds: 60000

ribbon.ConnectTimeout=3000
ribbon.ReadTimeout=60000

zuul.routes.proxy.path=/google/**
zuul.routes.proxy.url=https://www.google.com/

当我在浏览器中拨打http://localhost:8080/google/search?q=any value 之类的电话时,出现异常:

com.netflix.zuul.exception.ZuulException: Forwarding error
    at org.springframework.cloud.netflix.zuul.filters.route.SimpleHostRoutingFilter.handleException(SimpleHostRoutingFilter.java:261) ~[spring-cloud-netflix-zuul-2.2.0.RELEASE.jar:2.2.0.RELEASE]
    at org.springframework.cloud.netflix.zuul.filters.route.SimpleHostRoutingFilter.run(SimpleHostRoutingFilter.java:241) ~[spring-cloud-netflix-zuul-2.2.0.RELEASE.jar:2.2.0.RELEASE]
Caused by: javax.net.ssl.SSLProtocolException: Connection reset
    at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:126) ~[na:na]
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:321) ~[na:na]
Caused by: java.net.SocketException: Connection reset
    at java.base/java.net.SocketInputStream.read(SocketInputStream.java:186) ~[na:na]
    at java.base/java.net.SocketInputStream.read(SocketInputStream.java:140) ~[na:na]

有什么想法吗?如何调试我的代码?

【问题讨论】:

    标签: java spring spring-boot netflix-zuul


    【解决方案1】:

    我的祖鲁的 application.properties 是

    zuul.routes.books.url=http://localhost:8090
    zuul.routes.books.path=/student/**
    ribbon.eureka.enabled=false
    server.port=8080
    

    当我想点击学生的任何 API 时,我的 URL 将是

    http://localhost:8080/books/student/getStudent
    

    那么你可以尝试点击网址

    http://localhost:8080/proxy/google/search?q=any value
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-19
      • 2017-08-08
      • 2018-11-22
      相关资源
      最近更新 更多