【问题标题】:Add xml to http redirect将 xml 添加到 http 重定向
【发布时间】:2011-12-14 20:02:28
【问题描述】:

我有一种情况,我需要将用户从我服务器上的页面重定向到另一台服务器上的页面。在此重定向中,我还需要将一些 xml 发送到我要重定向到的服务器。这个 xml 文件可能很长,所以不能只在查询字符串中发送它。

我尝试将 xml 附加到标题中,但标题似乎没有到达另一端。

我知道如何以编程方式创建发送 xml 的请求以及如何重定向,只是不知道如何同时进行。

简而言之,我需要 xml 来搭载重定向。此重定向将在 MVC 操作中完成。

提前致谢。

编辑

我想出了以下可能的解决方案来解决我的问题。不幸的是,它确实利用了我希望避免的两个请求。

基本上,我将 xml 文件作为发布请求的标头发送,该标头还包含会话 ID。这是异步发送的。

然后我重定向用户,在查询字符串中传递相同的 sessionid。这充当将一个请求链接到另一个请求的令牌。我现在只需要等待,看看对方是否愿意使用两个请求来工作。

我还考虑使用一个额外的页面,我可以将用户重定向到该页面,该页面可能包含 Javascript,以执行一个额外的表单发布到另一个服务器,表单只包含一个包含 xml 片段的字段,但是这个被我的老板排除在可能性之外(正确的,因为它看起来有点像黑客)。

除了两个请求之间存在竞争条件的明显可能性之外,我提出的方法是否有任何明显或不明显的缺点?

【问题讨论】:

  • 认为您需要做的是将 XML 发送给他们并取回令牌。然后将用户重定向到包含该令牌的 URL。现在,第三方站点知道将 XML blob 与该用户相关联。您会在某些支付处理系统中看到这种安排。
  • 什么会利用这个 XML,因为客户端无论如何都会去重定向到资源?知道这个问题的答案可能有助于了解如何提供进一步的建议。
  • 或者,您可以使用 URL 中的令牌将用户重定向到第三方站点。您知道令牌与特定的 blob 相关联。第三方站点获取令牌并向您请求您提供的 blob。现在第三方拥有用户和 XML blob。同样的事情,但生成令牌的一方是你而不是他们。
  • @jon xml 有效负载将用于在用户被重定向到的页面中生成内容。
  • @inuyasha 需要对 xml blob 进行大量处理。在用户被重定向后让另一端请求它会增加太多的延迟。为这个想法 +1。

标签: c# asp.net-mvc-3 http-redirect


【解决方案1】:
猜你喜欢
  • 2020-03-06
  • 1970-01-01
  • 2019-02-08
  • 2017-07-16
  • 2015-08-04
  • 2012-02-25
  • 1970-01-01
  • 2017-11-13
  • 1970-01-01
相关资源
最近更新 更多