我们有BotDetect的许可证。我想用 Angular js 实现这个 BotDetect。我在谷歌中搜索并没有发现任何适当的帮助,但是,我得到了angularjs-captcha,它看起来很有希望,但对我没有帮助。
这正是我需要的。
- 使用验证码图像加载页面
- 用户填写表格
- 用户点击提交
- 使用 $http 请求页面提交
- 如果响应成功或失败,则应根据其工作引擎重新加载验证码。
这是我的表格
<form ng-submit="Submit($event)">
<table width="100%" cellpadding="0" cellspacing="1" align="center">
<tr>
<td class="datafield">
<label>Name:</label>
<span class="red">*</span>
</td>
<td class="datafield">
<input type="text" maxlength="50" class="searchboxmain" placeholder="enter name..."
ng-model="Form.Name" />
</td>
</tr>
<tr>
<td class="datafield">
<label>Email:</label>
<span class="red">*</span>
</td>
<td class="datafield">
<input type="email" maxlength="240" class="searchboxmain" placeholder="enter email..."
ng-model="Form.Email" />
</td>
</tr>
<tr>
<td class="datafield">Enter Captcha
</td>
<td class="datafield">
<botdetect-captcha>
<br />
<input type="text" id="CaptchaCodeTextBox" ng-model="Form.Captcha"/>
</td>
</tr>
<tr>
<td class="datafield"></td>
<td class="datafield">
<button class="submitbutton" ng-click="Submit($event)">Submit enquiry</button>
</td>
</tr>
</table>
</form>
控制器
app.controller('ContactCtrl', function($scope, $http) {
$scope.Form = {
Name: '',
Email: '',
Captcha: ''
};
$scope.Submit = function(event) {
// Here all code
event.preventDefault();
};
});
我很确定可能有其他解决方案而不是使用这个 Angular Captcha,但我不认识任何人,所以可以接受替代解决方案。