rocketweb/magento-captcha-bypass

该扩展通过通过cookie提供简单的散列值来禁用Google reCAPTCHA

v1.0.3 2023-07-07 05:31 UTC

This package is auto-updated.

Last update: 2024-09-07 07:55:15 UTC


README

该扩展通过通过cookie提供简单的散列值来禁用Google reCAPTCHA

安装

使用composer

composer2 require rocketweb/magento-captcha-bypass

设置

一旦安装,您需要在商店 -> 设置 -> 配置中配置扩展,然后打开安全(选项卡) -> Google reCAPTCHA 店面 -> 绕过店面 reCAPTCHA并设置一个唯一的随机字符串作为密钥字段:显示密钥字段的Admin截图

使用

首先,您需要将密钥添加到您正在使用的cypress.config.js

module.exports = defineConfig({
    projectId: "xxxxxx",
    e2e: {
        ...
        secretKey: '-key-from-magento-configuration-',
        ....

接下来,您需要添加CryptoJs库(或支持MD5的类似库)

npm install crypto-js

如果您的所有包都是开发依赖项,请也将此作为依赖项安装

npm install crypto-js  --save-dev

然后,在Cypress测试文件顶部包含crypto-js

# ... (other import lines) ...
import CryptoJS from 'crypto-js';

最后一步是在调用任何cy.visit(...)之前,在it()中设置激活ReCaptcha绕过的所需Cookie

it(['Can create an account', () => {
    let secretKey = Cypress.config('secretKey')
    let date = parseInt(new Date(). getTime()/1000);
    let hash = CryptoJS.MD5(secretKey + '-' + date).toString(CryptoJS.enc.Hex)
    cy.setCookie('__rbp', hash);

    cy.visit(...)
    ...
})

这将为特定散列添加一个cookie,然后该散列会被Magento代码识别,从而禁用页面上的ReCaptcha(如果已启用)。