小编Rob*_*ard的帖子

是否可以检测是否向用户显示了隐形验证码?

在我的网页中,我通过调用函数来验证基于 Invisible Recaptcha 的表单grecaptcha.execute()。通常这种情况对于用户来说是不可见的;他们看到的只是grecaptcha验证完成后触发的表单提交。

有时,会触发不那么隐形的验证码行为(例如,如果用户行为可疑),并向用户显示他们必须解决的常规验证码。当发生这种情况时,我想以编程方式检测它。

是否可以以编程方式发现在调用后是否向用户显示验证码grecaptcha.execute()


到目前为止,我已经尝试使用MutationEvents和来观察 DOM MutationObservers。不幸的是,所有有趣的事情都发生在 an 内部iframe,似乎无法判断是否显示了完整的验证码。

我不想测量调用grecaptcha我给它的回调需要多长时间,因为那是不可靠的(例如,缓慢的移动连接会扭曲结果)。


标记:

<form id="form" method="post" action="/form">
    Name: (required) <input id="name" name="name">
    <div id="g-recaptcha-div"
        class="g-recaptcha"
        data-sitekey="keeeey"
        data-callback="onRecaptchaDone"
        data-size="invisible"></div>
    <button id="thebutton">Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)

代码:

function onSubmit(event) {
    event.preventDefault();
    grecaptcha.reset();
    grecaptcha.execute();
}
function onRecaptchaDone(token) {
    form.submit();
}
window.onload = function() {
    form.onsubmit = onSubmit;
}
Run Code Online (Sandbox Code Playgroud)

javascript recaptcha invisible-recaptcha

5
推荐指数
0
解决办法
2156
查看次数

Buffer.toString('base64') 创建了哪种 base64 编码变体?

在 Node.js 中,通常使用内置Buffer来创建 base64 编码的数据:

const data = 'Hello world!';
const base64encoded = Buffer.from(data, 'utf8').toString('base64');
console.log(base64encoded); //prints "SGVsbG8gd29ybGQh"
Run Code Online (Sandbox Code Playgroud)

在撰写本文时,维基百科列出了至少 14个 base64变体。但是,Buffer 手册页没有指定实际使用的 base64 变体。

是否有任何权威来源说明以这种方式使用 base64 的哪个变体进行编码?

base64 node.js

4
推荐指数
1
解决办法
210
查看次数

为什么"return"和"break"只能作为Lua代码块中的最后一个语句出现?

正如Lua手册所述:http://www.lua.org/pil/4.4.html

我只对任何技术限制或约束感兴趣,而不是关于品味或编码标准的答案.

对我来说这似乎是一个奇怪的约束,因为挂起return可以很容易地添加声明do return end.

lua return break

1
推荐指数
1
解决办法
132
查看次数