Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在ember js和mvc中使用captcha_Javascript_Asp.net Mvc_Model View Controller_Ember.js_Captcha - Fatal编程技术网

Javascript 在ember js和mvc中使用captcha

Javascript 在ember js和mvc中使用captcha,javascript,asp.net-mvc,model-view-controller,ember.js,captcha,Javascript,Asp.net Mvc,Model View Controller,Ember.js,Captcha,我正在使用ember.js和asp.NETMVC创建一个站点。在我以前的asp.net站点中,我使用了captchaMVC。但是,我不知道如何使用它的余烬。谷歌搜索对我帮助不大 有人能告诉我如何将captchaMVC与Ember一起使用的正确方向吗?在reCaptcha中,用户代理和reCaptcha质询资源服务器之间的质询请求流以及后端应用程序服务器和reCaptcha验证API服务器之间的用户响应验证流通常由该服务器处理为您抽象这个过程,让您只在前端和后端处理其结果 另一方面,Ember是一

我正在使用ember.js和asp.NETMVC创建一个站点。在我以前的asp.net站点中,我使用了captchaMVC。但是,我不知道如何使用它的余烬。谷歌搜索对我帮助不大


有人能告诉我如何将captchaMVC与Ember一起使用的正确方向吗?

在reCaptcha中,用户代理和reCaptcha质询资源服务器之间的质询请求流以及后端应用程序服务器和reCaptcha验证API服务器之间的用户响应验证流通常由该服务器处理为您抽象这个过程,让您只在前端和后端处理其结果

另一方面,Ember是一个客户端应用程序,它不应处理验证步骤,不应公开您的私有reCaptcha密钥以及其他参数

由于这些事实,我发现手动构建reCaptcha支持比依赖特定插件更容易。佩奇很好地描述了DIY过程

我使用ember cli,因此bower安装recaptcha ajax-在bower.json中保存或配置它,直接指向Google的recaptcha-ajax.js,然后将其导入到文件中

在您的视图中,可以将特定元素作为目标,如下所示:

import Ember from 'ember';

export default Ember.View.extend({
    didInsertElement: function() {
        Recaptcha.create("your_public_key", 'element_id', {
            theme: "red"
            callback: Recaptcha.focus_response_field
        });
    }
});
在模板中,只需将上面的元素id的this元素嵌入到表单元素中:

<form action="" method="post">
    <div id="element_id"></div>
</form>

现在,您的后端表单处理程序将收到recaptcha_challenge_字段和recaptcha_response_字段,它必须在构建POST请求时使用这些字段,并且您必须根据recaptcha中的设置一些其他参数。在recaptcha中,用户代理和recaptcha challenge resource server之间的质询请求流以及用户响应验证流通常在后端应用程序服务器和reCaptcha验证API服务器之间,由抽象的流程为您处理,并让您仅在前端和后端处理其结果

另一方面,Ember是一个客户端应用程序,它不应处理验证步骤,不应公开您的私有reCaptcha密钥以及其他参数

由于这些事实,我发现手动构建reCaptcha支持比依赖特定插件更容易。佩奇很好地描述了DIY过程

我使用ember cli,因此bower安装recaptcha ajax-在bower.json中保存或配置它,直接指向Google的recaptcha-ajax.js,然后将其导入到文件中

在您的视图中,可以将特定元素作为目标,如下所示:

import Ember from 'ember';

export default Ember.View.extend({
    didInsertElement: function() {
        Recaptcha.create("your_public_key", 'element_id', {
            theme: "red"
            callback: Recaptcha.focus_response_field
        });
    }
});
在模板中,只需将上面的元素id的this元素嵌入到表单元素中:

<form action="" method="post">
    <div id="element_id"></div>
</form>

现在,您的后端表单处理程序将收到recaptcha_challenge_字段和recaptcha_response_字段,它必须用于构造POST请求,并且您必须根据设置一些其他参数。

您是否也在brocoli.js中导入了库?或者这不是必需的?@EdyBourne是的,我确实在我的帖子中提到,如果你仔细阅读的话,你必须在你的小册子文件中导入recaptcha ajax;凉的我一开始就是这样做的,但是我使用了错误的loader.js。现在有了正确的版本,一切都对我有利。谢谢@EdyBourne I Get Uncaught ReferenceError:在视图中创建验证码时未定义Recaptcha。我做错了什么?@Moh您可能想发布一个问题,并附上一些代码来帮助您调试问题。您是否也在brocoli.js中导入了lib?或者这不是必需的?@EdyBourne是的,我确实在我的帖子中提到,如果你仔细阅读的话,你必须在你的小册子文件中导入recaptcha ajax;凉的我一开始就是这样做的,但是我使用了错误的loader.js。现在有了正确的版本,一切都对我有利。谢谢@EdyBourne I Get Uncaught ReferenceError:在视图中创建验证码时未定义Recaptcha。我做错了什么?@Moh您可能想发布一个带有代码的问题,以帮助您真正调试您的问题。