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

在使用来自多个服务器的RESTful服务时,我可以使用同一个RestTemplate实例吗

欧阳翔
2023-03-14

我RestClient应该使用来自多个服务器的服务,每个服务器具有不同的主机名和凭据。

我知道RestTemplate是线程安全的,并且为每个任务创建不同的连接,但是如何使用不同的凭据来完成呢?凭据不是在创建时提供给RestTemplate的吗?

共有1个答案

墨翔宇
2023-03-14

您提到了凭据,因此我假设您使用RestTemplate来调用需要身份验证的服务。身份验证通常通过HTTP请求头(例如,基本HTTP身份验证)或URL参数来处理。

2种可能性:

  • 您可以实例化一个普通的RestTemplate并手动处理身份验证(在执行GetPost...)=>将RestTemplate与多个服务重用应该没有问题。
  • 您使用处理安全性的自定义ClientHttpRequestFactory或某些自定义ClientHttpRequestInterceptor实例化RestTemplate=>您可能无法共享它们,因为您可能会混合不同的身份验证。
 类似资料:
  • 在我的应用程序中,我有很多REST服务。我已经编写了所有服务的测试: REST服务调用(例如)如下所示: 然后我检查了响应体-一切正常。缺点是,必须启动应用程序才能调用REST服务。 我现在的问题是如何在我的JUnit-@Test方法中做到这一点?它是一个Spring Boot应用程序(带有嵌入式tomcat)。 谢谢帮忙!

  • 我使用netbean创建了一个restful Web服务,使用jpa从数据库创建了一个实体类,从实体类创建了一个restful Web服务,但是我使用tomcat作为我的服务器,现在下面的post方法不会将下面的json插入数据库,但是当我使用glassfish作为我的服务器时,它是有效的。你认为我缺少任何依赖关系吗?我如何模仿glassfish? 我正试图插入 我有以下依赖项: javaee-a

  • 我在dockerized应用程序和Memcached上遇到了一个问题,要存储一些值,显然,当a启动一个运行Spymemcached客户端的新Docker实例时,所有存储在缓存中的数据都是无效的,所以如果我之前在节点1的缓存中存储了一些值,然后启动节点2,这些值将从Memcached服务器中清除,最后如果a在节点1上再次存储相同的值,并在节点2上查询,它们将共享到两个节点之外,而不清除数据。是预期的

  • 问题内容: 在我的Web服务器应用程序中,我有一个方法,该方法可以修改xml文档并看起来类似于: 使用的zip归档文件包含需要修改的xml文件和其他一些文件。如何区分使用的xml文件和方法内部的归档以及应该使用哪种方法参数来表示此使用的资源? 问题答案: 一种解决方案是只读取。您可以将包裹在中。有了,您可以得到with ,然后可以得到与文件名。然后只要检查名称即可。 不过,您需要消耗。这是一个简单

  • 我们目前有一个服务器,它为他获得的每个请求创建一个新线程,因此基本上服务器获得他以后需要保存的数据。 现在,我们得到了实现RMI的请求,在这里我们可以观察当前保存的数据类型。 我怎样才能以最好的方式处理这个问题?我应该为每个线程创建一个RMI服务器吗?我可以在同一地址上拥有同一服务的多个实例,并让我的观察者注册到所有实例吗? 我正在使用RMI访问的谷歌示例:https://sites.google