从直接浏览器获取区分response.sendRedirect()

时间:2014-08-27 18:12:45

标签: url servlets redirect http-headers

我有一个场景,我从一台服务器到另一台服务器response.sendRedirect()。在第二台服务器中,它有一个表单,并将表单提交给第一台服务器。

(实际情况是SAML登录流程,其中第一个服务器是身份提供者,第二个服务器是托管登录页面的服务器。)

我的问题是,我不想让用户为登录页面添加书签并直接进入登录页面。例如,如果用户在一周后直接进入登录页面,则它具有在服务器1(IdP)中过期的无效URL参数。

是否可以区分用户完成的直接GET,以及服务器1完成的重定向。

设置attributesHeaders无效(预计会有效)。由于这些服务器位于两台服务器上,因此我也无法使用forward()

提前致谢。

1 个答案:

答案 0 :(得分:1)

AFAIK,Redirect无法支持POST。唯一可能的方法是让第一个servlet充当代理并向另一个服务器发出请求。