如何将Spring请求重定向到另一个应用程序?

时间:2016-04-26 06:16:16

标签: java spring-mvc redirect

我有一个应用程序可以接受POST请求。要请求,我需要定义一些标题,边界和连字符。换句话说,我需要制定完整的请求。我使用HttpURLConnection成功完成了哪项操作。 现在,我想从Spring应用程序请求应用程序。

说, 我有三个应用程序A(传感器),B(弹簧)和C(服务器)。

在这种情况下,B将充当接收A的请求的桥接器,并将其发送给C。

我不想在Spring中再次制作相同的请求,只是将请求重定向到服务器。 Spring中有没有这方面的机制呢?

1 个答案:

答案 0 :(得分:1)

重定向有3种机制:

  • 转发:您将请求(以及相关的响应)传递给同一上下文中的另一个servlet ,这意味着在同一个Web应用程序中 - AFAIK不是您需要的
  • 重定向:您向客户端(浏览器)提供应重新发送请求的位置(URL)。您可以重定向到任何URL,但它假设重定向的应用程序将直接接受客户端请求 - 正如您所说B充当桥梁,我认为它仍然不是您需要的
  • 代理:网桥向下一跳发送新请求,并将响应重新发送到自己的客户端。由于原始请求和新请求之间没有耦合,因此如果您在同一台服务器上,甚至可以使用不同的协议,例如管道或Unix套接字。或者你可以使用简单的Json来生成和解码HTML请求和响应。在Windows世界中,您甚至可以使用DCOM或.NET直接在远程服务器上执行方法。但即使它被这些工具隐藏,您仍然需要在桥上构建新请求并在服务器上对其进行解码(除了在同一服务器上使用DCOM / .NET)