1

我有 3 个不同的服务器。

On Server A I have a webpage pageA.aspx
On Server B I have a webpage pageFrame.aspx
On Server C I have a Web API controller controllerC.cs
On Server A I have another page pageB.aspx

pageA.aspx 和 pageB.aspx 是同一网站上的不同页面。

pageFrame.aspx 作为 IFRAME 嵌入在 pageA.aspx 中。

pageA.aspx 具有标准的 ASP.NET 身份验证和会话 cookie,以及其他 cookie。

pageFrame.aspx 获取这些 cookie 并对 ControllerC.cs 进行 ajax 调用,并能够在 POST 请求中传递这些 cookie。

ControllerC.cs 现在需要通过调用 pageB.aspx 向服务器 A 发出 POST 请求,但它需要传递从 pageFrame.aspx 的 ajax 调用中收到的 cookie。通过这样做,它可以到达 pageA.aspx 所在的同一会话。

现在 pageB.aspx 进行一些处理并使用票证(guid)回复 POST 请求。然后,作为对 pageFrame.aspx 的 ajax 调用的响应的一部分,此票证会从 ControllerC.cs 发回。pageFrame.aspx 然后将此票证提交给 pageA.aspx 作为对原始请求的响应。

PageA.aspx 现在只是简单地提交回其 Web 服务器,并且可以从会话中获取 pageB.aspx 在其处理期间放置在会话中的任何内容。

现在我的问题是如何将 cookie 从 ControllerC.cs 中 pageFrame.aspx 的 ajax 发布请求传输到它向 pageB.aspx 发出的请求?

我一直在尝试使用 HttpClient 并尝试将 cookie 从一个请求添加到另一个请求,但它们似乎位于两个不同的命名空间中,当我发布帖子时,cookie 不会被拾取和发送。有谁知道我如何在 ControllerC.cs 中编写代码来获取从 pageFrame.aspx 向它发出的请求中的 cookie 并将其传递给它正在向 pageB.aspx 发出的新请求?

我期待并感谢您的帮助。

谢谢你,格玛特

4

0 回答 0