Thinktecture EmbeddedSTS导致重复的HTTP请求

时间:2015-04-09 18:41:46

标签: asp.net session-cookies adfs claims thinktecture

我需要一些帮助来解决我在ASP.net MVC应用程序中本地使用Thinktectures Embedded STS时遇到的奇怪行为。我没有在使用ADFS的服务器上看到此问题。

问题是 登录到应用程序后,从那时起的大多数HTTP调用都会被调用两次。 第一个HTTP请求没有FedAuth cookie,服务器响应状态代码为302(重定向),另一个请求到同一个URL,但这次使用Fedauth cookie。我试图了解是什么导致浏览器在没有FedAuth cookie的情况下发送第一个请求,以及服务器为什么重定向到同一个URL?

我还需要帮助了解EmbeddedSTS URL的解析方式。我浏览了Github上的代码,但我不清楚EmbeddedSTS网址是如何解决的。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我能够自己解决这个问题。 此问题与cookie路径区分大小写有关。我在localhost中的虚拟目录配置为 ATSWeb ,但在进行AJAX调用时,我正在使用不同的虚拟目录(atsweb)构建完整的URL。 由于ADFS cookie是使用路径/ ATSWeb设置的,因此在执行AJAX调用时,浏览器不会将Fedauth cookie发送到服务器。这导致了各种各样的问题。

您可以在以下链接中详细了解Cookie路径。 http://www.allbacktomine.com/blog/2009/02/04/BrowserCookiesThePathIsCaseSensitive.aspx

Why are cookie paths case sensitive?