当前位置: 首页 > 知识库问答 >
问题:

ResourceAccessException:POST请求时发生I/O错误

端木昱
2023-03-14

尝试将数据发布到api时出错。下面是代码片段。期待早日得到帮助!谢谢

String id= Comment.getId();
String authStr = "userName:password";
String base64Creds = Base64.getEncoder().encodeToString(authStr.getBytes());
// create headers
HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "Basic " + base64Creds);
headers.setContentType(MediaType.APPLICATION_JSON);
JSONObject commonJsonObject = new JSONObject();
commonJsonObject .put("body","password");
SimpleClientHttpRequestFactory clientHttpRequestFactory = new SimpleClientHttpRequestFactory();
// Connect timeout: time is in milliseconds
clientHttpRequestFactory.setConnectTimeout(3000);
// Read timeout: time is in milliseconds
clientHttpRequestFactory.setReadTimeout(3000);
HttpEntity<String> request = new HttpEntity<String>(commentJsonObject.toString(), headers);
RestTemplate restTemplate = new RestTemplate(clientHttpRequestFactory);
String newCommentString = restTemplate.postForObject(url, request, String.class);

7组织。springframework。网状物客户ResourceAccessException:“jirasdtest.myoutotec.com/rest/api/2/issue/SD-1043/comment”的POST请求出现I/O错误:连接超时;嵌套异常为java。网SocketTimeoutException:连接在组织上超时。springframework。网状物客户RestTemplate。doExecute(RestTemplate.java:744)位于org。springframework。网状物客户RestTemplate。执行(RestTemplate.java:670)

共有1个答案

微生运浩
2023-03-14

也许选择SimpleClientHttpRequest estFactory不是最好的解决方案...请尝试使用另一个实现-HttpComponentsClientHttpRequest estFactory

var requestFactory = new HttpComponentsClientHttpRequestFactory();
requestFactory.setConnectTimeout(20000);
requestFactory.setConnectionRequestTimeout(20000);
requestFactory.setReadTimeout(30000);

SimpleClientHttpRequestFactory

ClientHttpRequestFactory实现,使用标准JDK工具。

HttpComponents客户端HttpRequestFactory

ClientHttpRequest estFactory实现,它使用Apache HttpComponents HttpClient创建请求。

 类似资料:
  • 当我调用restendpoint(rest模板http客户端)“myservice..com/rest/api/”时,有时会出现以下错误。此错误的原因是什么?这是客户端还是服务器错误?

  • 我使用Spring Boot,在保持与第三方REST服务的长期连接的同时,遇到了以下问题: 此服务可以在返回结果之前将连接保持一个小时或更长时间。 我的RestTemplate配置如下所示: 我能做些什么来修复我这边的问题吗,或者这是服务端的纯问题,应该在那里修复?

  • 我的公司使用Play framework和Scala作为后端服务器。最近我们的服务器一直有问题。当向远程API发出安全(SSL)请求时,我们遇到了下面的异常。似乎是关于SSL的一个问题,但我不确定。一个月前我们遇到了类似的问题,并设置了flag: -j-xx:-useaesintrinsics-dxx:-useaesintrinsics null

  • 我已经用谷歌搜索了它。但是这些都不能解决我的问题。我在调用rest控件时,代码中的SSL证书出现了问题。 我的控制方法是: 错误为:-I/O错误在“https://myurl.com”的POST请求上:sun.security.validator.validatoreXception:PKIX路径构建失败:sun.security.provider.certpath.suncertPathBuil

  • 我正在使用mybatis将数据插入到postgresql DB中。我有19629个记录要插入。我正在尝试一次插入所有记录。但是,如果我向查询传递超过6K条记录,我将得到原因:org.PostgreSQL L.util.psqlException:发送到后端时发生I/O错误。 设置参数SQL:insert到temp_overdrive_csv_dtls(LPAT_LIBRARY_CARD_NUMER

  • 我正在使用Spring RestTemplate进行RESTful调用。我还使用自定义ClientHttpRequestInterceptor记录请求和响应,以便进行调试。 为了多次读取响应(一次用于日志记录,一次用于处理),我使用了BufferingClienthtPrequestFactory。以下是设置: 不知道为什么会发生这种情况,但我打开了调试器,并为request.getBody()设