2

发现表单身份验证 Cookie 未在服务请求之间共享的问题。

Cookie '.ASPXAUTH' 已成功生成并从登录服务发送到浏览器,但不会将 Cookie 发送到对同一服务的后续请求。

从云应用程序调用服务时发现使用 HTTP 1.1 的请求和响应它是 HTTP 1.0

对 Fiddler 和其他工具的用户的更多观察:

在以下情况下工作正常:

  1. 从本地开发系统运行服务和客户端网站
  2. 在同一 IIS 上托管服务和客户端(本地和远程)
  3. 基于 URL 访问,cookie 正确传输

不适用于以下情况:

  1. 在不同的 IIS 服务器中托管服务和客户端。
  2. IIS(或 Azure)中的托管服务和来自本地开发系统的客户端

更多细节:两个请求都针对相同的服务,即相同的域、相同的协议、相同的端口号等。

20-12-2012 15:14 更新:

  1. 正如我之前所说,登录功能在 Ajax 调用上工作时不会失败,Fiddler 在响应时显示 Set-Cookie,但浏览器没有读取 Cookie。

  2. 尝试在 $.Ajax() 的“完成:”事件上读取 document.cookies,但我无法读取 cookie。表示浏览器没有获取或持有 cookie(Fiddler 显示在相同的响应上)

问候,罗摩克里希纳

4

1 回答 1

0

使用 Forms Auth,您是否执行了一些操作以使 ASP.NET 会话脱离进程并脱离服务器?

您不能在服务器之间共享会话,因此您必须使用 SQL 会话状态提供程序并将会话放入 SQL Azure,或者使用 Windows Azure 缓存并提供会话状态提供程序将会话存储到缓存中。

我相信你很擅长使用互联网搜索引擎,但这里有一个很好的文章列表(让会话退出进程):

于 2012-12-11T15:38:59.200 回答