问题标签 [spring-resttemplate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - RestTemplate ,有没有办法在检查响应正文后重试成功的请求?
有没有办法重试成功的请求?所有示例都指向当 RestTempalte 发生故障时的重试行为。我想发送一个请求,等待响应并检查响应中的一个字段,如果它不是预期的状态,则重试请求。这可以使用 RestTemplate 来完成吗?我唯一知道的是做一个线程睡眠并再次调用该方法。我想避免这种情况。
spring - RestTemplate 使用括号和斜线获取请求
我使用下面的 URL 和 RestTemplate 来获取数据 http://localhost:8161/console/jolokia/exec/org.apache.activemq.artemis:broker="0.0.0.0"/listQueues/{"field":"", "操作":"","值":""}/1/100
我的代码如下所示
从上面的代码我得到以下错误
有什么方法可以通过 RestTempate 在 URL 中使用 / 传递 {} 吗?
我尝试了以下解决方案,但它不起作用。
https://stackoverflow.com/questions/43917408/resttemplate-request-with-braces
https://stackoverflow.com/questions/41267993/how-to-properly-escape-a-url-to-be-used-in-resttemplate-that-has-flower-brackets?noredirect=1&lq=1
任何人都可以在这方面帮助我。
java - 使用自定义证书和密钥调用 RestTemplate API
我正在通过需要 SSL 证书的 RestTemplate 调用外部 API。外部 API 提供商已经为我提供了证书文件 (company.crt) 及其密钥文件 (company.key)。在 Postman 中添加证书、密钥和密码时,我能够成功调用 API。但是当我在 SpringBoot 项目中使用 RestTemplate 调用时,即使在添加 SSLContext 之后,我也会收到错误消息。
我遵循的步骤:
使用 openssl 从 company.crt 和 company.key 文件创建了 company.p12 存储文件:
openssl pkcs12 -export -name servercert -in company.crt -inkey company.key -out company.p12
使用 Keytool 将 company.p12 转换为 company.jks 存储文件:
keytool -importkeystore -destkeystore company.jks -srckeystore company.p12 -srcstoretype pkcs12 -alias companycert
在将 company.jks 放在 SpringBoot 项目的资源文件夹中之后,在 application.properties 文件中创建了配置:
然后,我为 RestTemplate 创建了一个配置:
调用外部 API:
通过 RestTemplate 调用 API 后的错误:
spring - 找不到适合响应类型的 HttpMessageConverter
org.springframework.web.client.UnknownContentTypeException:无法提取响应:没有为响应类型 [class net.minidev.json.JSONObject] 和内容类型 [application/json] 找到合适的 HttpMessageConverter
endpointUrl 也返回 JSONObject 所以不明白为什么不匹配
java - 使用 RestTemplate getForObject 时无法捕获错误
我正在使用 RestTemplate 从我的另一个 Web 服务调用我的 Web 服务的运行状况执行器端点,以查看 Web 服务是否已启动。如果 web 服务启动,一切正常,但当它关闭时,我收到错误 500,“内部服务器错误”。如果我的网络服务已关闭,我会尝试捕获该错误以便能够处理它,但我遇到的问题是我似乎无法捕获该错误。
我尝试了以下方法,但它从未进入我的任何一个捕获部分
我也试过这样做,但结果相同。它似乎永远不会进入我的错误处理程序类。
关于如何从另一个 Web 服务调用我的 Web 服务的健康执行器并捕获该 Web 服务是否关闭的任何建议?
spring - 从 Spring Boot 调用安全的 Rest api
我有一个 spring boot 应用程序,我需要调用一个安全的外部 api 来检索数据。
在下面我遵循的步骤:
我使用用户名和密码生成令牌
我将令牌保存在临时变量中
我在每个 resttemplate 调用中使用它
我的问题是:
- 保留生成的令牌并将其用于每个连接的用户的最佳方法是什么?
- 我们可以配置 spring security 来管理对外部 api 的调用吗?
java - RestTemplate Request Header 发生错误,对于 spring 4.1.3 太大
如何在我的 Spring Web 应用程序中解决这个问题?它在 JDK 1.7、Spring 4.1.3 RELEASE 和 WebLogic 10 中运行,但是当我们升级 JDK 1.8、Spring 4.1.3 RELEASE 和 Weblogic 12.2 时它失败了。我们可以增加RestTemplate
. 请告诉我
请找出以下错误
multithreading - 什么会导致使用 RestTemplate 在 Spring Boot Restapi 中过时的连接
我读到“过时的连接是服务器断开连接但客户端不知道的结果。” 但是我试图找出如果我使用基于 SpringBoot RestTemplate 的应用程序(进一步使用来自 Apache 的 PoolConnectionManager)并从我的应用程序调用另一个 API 的情况下怎么可能?在这种情况下,我的应用程序是客户端,而我正在调用的应用程序充当服务器。如果我点击该应用程序,并且我正在调用的 api 接收到请求,但在完全填充请求之前不知何故崩溃了。在这种情况下,我肯定会在最后得到例外。而且我很确定,如果 PoolConnectionManager 必须关闭该连接。那我怎么能有过时的连接?
spring - 在 @Async 方法中通过 Spring RestTemplate 调用 Rest API
据我所知,Spring RestTemplate是同步的并阻塞线程,直到 Web 客户端收到响应,而 Spring WebClient是异步且非阻塞的。
但是,如果我们在@Async注释方法中使用RestTemplate调用 API 会怎样?
它会阻止@Async创建的新线程吗?
最后,您对 Rest API 的异步调用有什么建议(没有WebClient,因为我使用的是早于 5 的 Spring 版本)。谢谢