如何重定向HTTP有效负载?

时间:2011-03-01 21:56:14

标签: servlet-filters servlets

我的用例是这样的:

1- A user logs-in to a FIRST server (via a web form of some sort).
2- This FIRST server establishes the user connection.
3- The FIRST server sends a URL redirection to the user.
4- The user's browser will point to SECOND server.

这是不清楚我头脑中的内容是否真的可行。

浏览器重定向可以将HTTP POST / GET中的有效负载发送到重定向的URL吗?让我们说:

5- SECOND server recieves POST in servlet to process the payload
public void doPost(HttpServletRequest req, HttpServletResponse resp)
    throws ServletException, IOException {
    ...
}

实际上是什么,我有2台服务器。 FIRST建立连接并发送回令牌(包括安全评估,用户信息和内容)。需要以某种方式将此令牌转发给SECOND,后者将解析此令牌(XML流)以获取"知道"用户。

我完全疯了吗?

THX。

1 个答案:

答案 0 :(得分:3)

这取决于您正在进行哪种重定向。如果您只使用“位置”标题,则只能传递GET有效负载。

现在,为了发送更多数据,您需要编写一个临时页面(可能是空白的),其中<Form>(可能是隐藏的)指向第二台服务器,并且会自动自动提交(例如使用Javascript)。所述表单将能够将任何数据POST到第二台服务器。

在将令牌从一台服务器发送到另一台服务器时,请考虑安全问题,并确保人们无法猜测或复制这些令牌,或者两台服务器通过其他方式进行通信以确保所有客户端都是合法的。