Javascript 什么';恢复HTTP POST的最佳方式是什么?

Javascript 什么';恢复HTTP POST的最佳方式是什么?,javascript,authentication,web-applications,oauth-2.0,saml-2.0,Javascript,Authentication,Web Applications,Oauth 2.0,Saml 2.0,我正在尝试处理以下情况,我是网络应用世界的新手,请原谅我的无知(如果有): 假设/限制: 我对web应用程序的代码库没有任何控制权 正在http代理级别处理身份验证 情景: 用户已经使用SAML通过web应用进行了身份验证,并且已经访问web应用相当长一段时间了 他的身份验证令牌(或cookie)过期 他提交了一份表格(HTTP POST) 服务器需要再次执行身份验证工作流,这需要HTTP重定向 现在,需求是在完成身份验证工作流后,以某种方式为用户自动重新提交原始HTTP POST。我能想到的几

我正在尝试处理以下情况,我是网络应用世界的新手,请原谅我的无知(如果有):

假设/限制:

  • 我对web应用程序的代码库没有任何控制权
  • 正在http代理级别处理身份验证
  • 情景:

  • 用户已经使用SAML通过web应用进行了身份验证,并且已经访问web应用相当长一段时间了
  • 他的身份验证令牌(或cookie)过期
  • 他提交了一份表格(HTTP POST)
  • 服务器需要再次执行身份验证工作流,这需要HTTP重定向
  • 现在,需求是在完成身份验证工作流后,以某种方式为用户自动重新提交原始HTTP POST。我能想到的几个选择是:

  • 使用javascript注入将POST状态存储在浏览器的会话存储中,并在完成身份验证工作流后重新发布内容。但是我不知道如果最初的帖子是使用XMLHttpRequest完成的,那么这将如何工作
  • 将POST状态存储在服务器(或代理)端,执行内部重新发布并将结果返回到浏览器
  • 还有其他选择吗???如果我们可以避免在服务器端保存状态,那就太好了。人们通常如何处理这种情况

    蒂亚


    一般来说,第二种方法是实施的

    您将请求发送到运行应用程序的服务器,它会保留POST数据(实际上,再次进行身份验证的服务器会这样做)、发送您进行身份验证、将您重定向回服务器并再次发布数据。此功能可能已经存在于您的身份验证基础架构中,只需启用即可,但这当然取决于您正在运行什么

    此功能有时也被称为“后期数据保存”