在IE中打開我的應用程序。MVC驗證Antiforgery令牌失敗
創建一個虛擬的HTML文件,並將生成的隱藏字段'__RequestVerificationToken'複製到虛擬頁面。在表單提交這個html文件時,我打電話給我的服務當我在IE的另一個選項卡中打開這個虛擬頁面並提交時。我看到能夠成功提交該數據。
ValidateAntiforgey令牌在這種情況下失敗。
任何一個可以指導怎麼樣的問題都可以解決。
在IE中打開我的應用程序。MVC驗證Antiforgery令牌失敗
創建一個虛擬的HTML文件,並將生成的隱藏字段'__RequestVerificationToken'複製到虛擬頁面。在表單提交這個html文件時,我打電話給我的服務當我在IE的另一個選項卡中打開這個虛擬頁面並提交時。我看到能夠成功提交該數據。
ValidateAntiforgey令牌在這種情況下失敗。
任何一個可以指導怎麼樣的問題都可以解決。
我回答了我的問題
防僞驗證令牌cookie值與_requestVerificationToken隱藏的值進行比較。因此,當打開新選項卡中具有_requestVerificationToken隱藏字段(從應用程序複製)值的html時,在此頁面提交時,它會通過ValidateAntiforgery驗證,因爲兩個選項卡的cookie值相同。
你介意張貼你的代碼中你把驗證?也許是這樣的:
[ValidateAntiForgeryToken(Salt="someArbitraryString")]
public ViewResult SubmitUpdate()
{
// ... etc
}
謝謝!