1

我正在尝试验证Google reCAPTCHA本地环境 Java(SpringBoot) 代码中的响应。无论我尝试使用什么方法进行 REST 调用,我都会不断收到此异常。但是,当我从 PostMan 访问相同的 API 以及在我们的 Azure 平台上部署代码时,我能够得到 Google 的响应。有没有办法解决这个问题?

以下是网址:

https://www.google.com/recaptcha/api/siteverify?secret=<secrete_key>&response=<gRecaptchaResponse>

下面是被抛出的异常:

对于路径 [] 上下文中的 servlet [dispatcherServlet] 引发异常 [请求处理失败;嵌套异常是 org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://www.google.com/recaptcha/api/siteverify": Connection reset; 嵌套异常是 java.net.SocketException: Connection reset] 的根本原因

java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(SocketInputStream.java:210) ~[na:1.8.0_161]
    at java.net.SocketInputStream.read(SocketInputStream.java:141) ~[na:1.8.0_161]
    at sun.security.ssl.InputRecord.readFully(InputRecord.java:465) ~[na:1.8.0_161]
    at sun.security.ssl.InputRecord.read(InputRecord.java:503) ~[na:1.8.0_161]
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:983) ~[na:1.8.0_161]
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1385) ~[na:1.8.0_161]
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) ~[na:1.8.0_161]
4

1 回答 1

-1

您可以将其包装在 try-catch 块下:

try {

} catch (SSLException e) {

} catch (SocketException e) {

} catch (IOException ie) {

}
于 2021-01-11T22:31:47.463 回答