1 首先我不太了解這個 .net的身份驗證機制。因為我配置這個身份驗證的,如果沒通過驗證的話,他會跳轉到默認的登錄頁面的
2 但是正常的頁面跳轉之類的,這些都沒問題的,然后ajax也不是每次都有這個 身份驗證失敗,可能大概就是3次出現一次
3 也有可能是在一個頁面中,有多個ajax, 可能有其中一兩個就會出這個問題。
配置如下,ajax的話,就是很常規的寫法了

uj5u.com熱心網友回復:
https://docs.microsoft.com/zh-cn/dotnet/api/system.web.security.formsauthentication?view=netframework-4.8你沒做這一步操作:
FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
uj5u.com熱心網友回復:
按照這個弄了,沒有效果
uj5u.com熱心網友回復:
那在瀏覽器里,F12看下cookie的變化。
uj5u.com熱心網友回復:
我初步認為是 我部署在兩臺服務器上的問題,這兩臺服務器由上層的一個負載的ng做分流的有可能是第一次進來的時候,去了A服務器,然后做了驗證,結果第二次ajax請求的時候去了B的服務器。
因為我剛才把B服務器關掉之后,他正常跳轉,到了B服務器之后,報了一個404錯誤,他不說什么 認證失敗的問題了。
然后如果在這個模式下,如果能夠實作在不同服務器做驗證呢,我搜索了其他檔案,有一個說法,但是我按照他的做了,沒效果。
<machineKey decryption="Auto" decryptionKey="AutoGenerate,IsolateApps" />
uj5u.com熱心網友回復:
sessionState啥設定,感覺和這個有關uj5u.com熱心網友回復:
首先不知道你為何要這么寫,如果是每次用ajax呼叫介面的時候要銀印證是否登錄的話,建議不要這樣配置,你可以建一個空的父類,在里面驗證cookie里面是否有登錄資訊,沒有就是沒有登錄,跳轉到對應的頁面,身份驗證也是一樣的道理uj5u.com熱心網友回復:
sessionState啥設定,感覺和這個有關
抱歉,最近忙,都沒時間關注了
現在問題還是沒解決,我不用windows驗證了
我的sessionSate是 sqlState 是存在sql資料庫的,這個session倒是沒問題,這個之間 做多服務器的時候就考慮了的
但是 session跟windows 自帶的驗證應該沒啥關系
uj5u.com熱心網友回復:
首先不知道你為何要這么寫,如果是每次用ajax呼叫介面的時候要銀印證是否登錄的話,建議不要這樣配置,你可以建一個空的父類,在里面驗證cookie里面是否有登錄資訊,沒有就是沒有登錄,跳轉到對應的頁面,身份驗證也是一樣的道理
不是我為啥這樣寫,我沒有刻意去繼承這些類,這些都是 很老很老的經典代碼了,
這個.net自帶的winforms驗證,并非我可以去寫什么,至于你說的用cookie去寫,這個是可以寫,現在的關鍵是 問windows驗證在雙服務器下如何辦
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/6779.html
標籤:ASP.NET
