我正在開發一個Flash註冊表單,我需要結合動態「驗證碼」圖像進行確認。 任何人都可以推薦一個最好的解決方案嗎?在Flash中實現驗證碼
回答
這與真正的HTML表單中的驗證碼沒有什麼不同。
假設您在服務器上使用了php,並且您有一個captcha.php scritp,它生成驗證碼圖像並將其值保存在會話中。在HTML表單中,您可以使用元素並將其src設置爲captcha.php。用戶會用圖片中看到的文字填充一個字段。在接收帖子的腳本中,您將檢查用戶輸入是否與會話值匹配。
在Flash形式中,它完全一樣。您加載調用captcha.php的圖像並要求用戶輸入額外的字段。然後,當您將數據發佈到服務器時,您在captcha字段中傳遞用戶鍵入的值,並且服務器將該值與您在調用captcha.php時存儲在會話中的值進行匹配。
所以,基本上,它和HTML格式一樣。
製作強大的驗證碼並不是一項簡單的任務。機器人必須足夠艱難才能失敗,但對於人類來說足夠容易成功......我會看看現有系統並可能使用它們。 reCAPTCHA很受歡迎http://recaptcha.net/。它可能通過閃光使用它,但我沒有看過它。
驗證碼用於防止機器人提交html表單,這很容易完成,因爲html易於理解和編程處理。 Flash應用程序也是如此。如果bot沒有專門針對您的網站,那麼bot一般很難提交Flash表單。
因此,您無需擔心在使用Flash應用程序時captcha解決的垃圾郵件問題。
,如果您後來發現這是一個問題,則很容易返回並添加。 – cobbal 2010-02-21 23:16:19
機會是,機器人不會寫入您的網站。如果需要出現,一個簡單的「爲我添加這兩個數字,k?」會很簡單。
坦率地說,我懷疑有人會寫的信認簽了幾百次在您的網站=/
你應該更擔心有人拆卸[或任何閃光術語] .swf文件s和簡單地發送「註冊」消息到您的服務器=/
是的,因此,我試圖暗示Captcha必須應用於服務器端,或者,實際上,它並不難。
我們強烈需要將CAPTCHA實現爲Flash動畫/表單。
要注意的最重要的一點是FF或IE(不記得哪一個)不會使用Web服務調用返回任何cookie。所以,如果你提交你的表單到。網絡服務不能使用http請求的會話狀態來存儲驗證碼文本,然後將用戶輸入的驗證碼值與網絡服務(會話啓用的網絡方法)進行比較。
我們執行以下操作:
- 網頁
- 通此令牌作爲Flash變量Flash影片
- 負載驗證碼圖像與標記爲一網址PARAM閃光燈上設置一個獨特的標記值(GUID)。該請求期間即captchaImg.aspx?T = XXXXXXX
- 保存在一個表中的隨機驗證碼文本與令牌
- 當用戶提交他們的形式,用一個表中的 比較令牌和用戶輸入的驗證碼值
這種方法對我們非常有效。
這也是網絡農場的安全。
public class Captcha extends Sprite{
private var question:String = "How do you feel?";
private var _answer:String;
private var isRobot:Boolean;
public function Captcha(answer:String){
_answer = answer;
}
public function checkAnswer():Boolean
if(answer != "sad"){
isRobot = true;
return isRobot;
}else{
isRobot = false;
return isRobot;
}
}
}
- 1. 在ipad中實現驗證碼
- 2. 在GWT-Ext 2.0.3中實現驗證碼
- 3. 如何在Android中實現驗證碼
- 4. 在MVC中實現驗證
- 5. 在PORO中實現驗證
- 6. Angular JS中的驗證碼實現
- 7. 錯誤在asp.net驗證碼實現
- 8. 在Flash Media Server上實現身份驗證/授權
- 9. 首先在實體框架代碼中實現數據驗證
- 10. 谷歌驗證碼V2實現VB.net
- 11. 如何實現鍵值編碼驗證
- 12. 自定義IUser實現 - 驗證密碼
- 13. 易於使用codeigniter實現驗證碼?
- 14. 爲zf2實現密碼驗證器
- 15. 在Flask中實現Gmail身份驗證
- 16. 如何在AngularJS中實現驗證
- 17. 在Swift 3中實現收據驗證
- 18. 在WildFly8中實現身份驗證
- 19. DataAnnotations驗證只在MVC中實現?
- 20. 在java中實現交叉驗證
- 21. 在軟件中實現802.1x驗證器?
- 22. 在JavaFX中實現Flash WebEngine
- 23. 在哪裏實現跨實體驗證?
- 24. 在setter中實現驗證或使用Hibernate驗證器
- 25. 在MS Access中實現位掩碼驗證
- 26. 如何在iphone中實現驗證碼變化sdk
- 27. 如何在CakePHP 2.0中實現驗證碼?
- 28. 在無狀態REST Web服務環境中實現驗證碼
- 29. flash中的空格驗證
- 30. 實現Facebook身份驗證
定時下載Flash並填寫表格?聽起來像一個複雜的機器人。但我不懷疑它們存在。但是,如果他們這樣做,那麼JavaScript可以在簡單的網站中進行混淆?我想有人可以填寫你的表格,然後複製POST值並重新提交。 – alex 2010-02-21 23:15:46