0
我很想知道人們是如何處理這個問題的。Ajax調用WebAPI - 如何防止濫發提交按鈕?
我有一個單一的窗體(使用div顯示/隱藏部分,因此它看起來像三頁)和一個提交按鈕的網站。表單通過jQuery AJAX POST提交給我的WebAPI方法。我不希望人們能夠在快速提交中多次發送POST。
我在單擊它時禁用了Submit按鈕,但這並不妨礙有人在控制檯中編寫腳本來反覆調用該方法。他們可以查看JavaScript,查看網址,併發布到它。
我聽說過API密鑰,但我不認爲它們適用於此,因爲沒有登錄到網站。如果有的話,重複請求仍然需要密鑰。
我可以使用CAPTCHA我想......但還有哪些其他選項可用?
更多信息,請給一些細節,記住這是一個Ajax後。服務器如何知道具有相同標記的後續POST將被忽略?是否有WebAPI DataAnnotation使用? – VictorySaber
@VictorySaber首次提交後必須更改csrf值並重新生成新的CSRF令牌。這裏有一個鏈接可以讓你知道你如何處理令牌。 https://gist.github.com/ziadoz/3454607 –
假設是客戶端,什麼是阻止某人調用令牌生成方法?例如getToken(); postForm(令牌)在控制檯? – VictorySaber