2012-05-28 166 views
0

我有一個頁面,我的應用程序完全基於jQuery AJAX構建。所有的精美花花公子,用戶體驗都是可愛的,但是我一直無法修復的問題是會話超時。儘管各種嘗試添加「心跳」(包括髮布到自定義http處理程序,更新會話變量並將空白頁面加載到iframe以確保頁面生命週期完成),但我仍然虔誠地獲得身份驗證錯誤。ASPXAUTH Cookie過期

據我可以告訴ASPXAUTH cookie沒有被更新,因爲我希望超時時間過去了,然後我得到我的錯誤。下一次,我的「熱情」發生,但服務器給了我一個新的cookie,然後我很好,直到下一次超時。

任何有識之士將不勝感激。

在此先感謝。

回答

1

如果ASP.NET進程結束(我相信默認情況下進程在非活動狀態10分鐘後結束),並且您沒有爲該站點設置顯式驗證設置,您將看到這一點。

您可以通過增加IIS(instructions for IIS7/Windows 2008)中的空閒超時或通過在web.config文件中設置machineKey來解決該問題。有關machineKey所做的一個非常詳盡的回答可以在here找到,而machineKey部分的生成器可以在http://aspnetresources.com/tools/machineKey找到。

1

我記得很久以前,我遇到了一些與登錄到期有關的問題(這與ASP.Net中的會話超時不同)問題是因爲我創建了自定義auth cookie而沒有使用標準重定向方法。你在做類似的事嗎?如果是這樣,你可能需要手動更新cookie,而不是簡單地依靠滑動到期魔術。

爲了讓社會幫助,我認爲你應該更新下列您的文章:

  • 部分配置爲窗體身份驗證
  • 會話
  • 部分配置
  • 代碼用於登錄
+0

該cookie由DotNetCasClient創建。但我發現滑動失效已關閉,這當然會導致我的麻煩。 –