我正在寫一個使用窗體身份驗證的ASP.NET MVC應用程序。目標客戶端是各種移動Web瀏覽器。黑莓支持窗體身份驗證 - ASP.NET MVC應用程序
當我使用BlackBerry 8530模擬器時,我的MVC應用程序按預期進行驗證。我可以訪問控制器方法用[Authorize]屬性裝飾的頁面 - 沒問題 - 它們顯示,因此我假設我的表單身份驗證工作正常。
使用物理Windows Mobile設備瀏覽我的網站,我有與BB模擬器相同的體驗,表單身份驗證按我的預期工作。
但是當我嘗試使用Blackberry 8900物理設備訪問該站點時,當我單擊登錄頁面時,登錄頁面不斷循環返回。該設備不保留它的「身份驗證」狀態。
我添加代碼來驗證這一點,我可以看到: Request.IsAuthenticated:假 User.Identity.IsAuthenticated:假
所以我的問題是什麼下一步我可以嘗試找出原因黑莓8900正在失去它的身份驗證狀態。這個cookie是相關的嗎?
任何人有任何想法?
乾杯 德里克
葛瑞格爾,當我添加了無Cookie =「真」它打破了URL重寫。 – 2010-03-08 22:16:36
@Derek Mitchell如果你不能修改你的URL路由沒有cookie,我看到的唯一剩下的解決方案是添加隱藏字段與會話ID和轉換每個鏈接的形式... – Gregoire 2010-03-09 14:27:11
感謝您的建議。我想我可以改變路線以適應無cookie的sesstionState,但我並不想讓整個MVC應用程序變得無cookie。大多數移動客戶端似乎沒有任何關於基於表單的身份驗證的問題。根據您的想法,我可以嘗試使用會話ID的自定義授權屬性... – 2010-03-10 21:45:23