Санта клауза нету, но Гринч пришел в топик и ответил, спасибо XD Интересно то, что каждый из канвасов еще пару раз рисуется. Возможно тест на производительность какой то... На нойз тест попроще был бы, как раз нашел недавно себе:
function testKnownPixelValue(size, log){ "use strict"; const canvas = document.createElement("canvas"); canvas.height = size; canvas.width = size; const context = canvas.getContext("2d"); const imageData = new ImageData(canvas.width, canvas.height); const pixelValues = imageData.data; for (let i = 0; i < imageData.data.length; i += 1){ if (i % 4 !== 3){ pixelValues[i] = Math.floor(256 * Math.random()); } else { pixelValues[i] = 255; } } context.putImageData(imageData, 0, 0); const p = context.getImageData(0, 0, canvas.width, canvas.height).data; for (let i = 0; i < p.length; i += 1){ if (p[i] !== pixelValues[i]){ log("wrong value", p[i], "at", i, "expected", pixelValues[i]); return true; } } return false; } testKnownPixelValue(10, console.log)Добавили поддержку Turnstile на страницах Cloudflare Challenge
-
Сервис теперь поддерживает капчи Turnstile, используемые на страницах безопасности Cloudflare Challenge.
Вам нужно обновить ваш код, если:
Вы получаете капчу на странице безопасноcти Cloudflare Challenge (похожей на ту, что на скриншоте)

Вы всегда получаете ERROR_CAPTCHA_UNSOLVABLE от API.
Что нужно делать:
Вам нужно добавить к запросу следующие дополнительные параметры, когда отправляете капчу на решение в API:
-
action
-
data
-
pagedata
-
useragent
Как найти значения этих параметров
Чтобы получить значения параметров вы можете переопределить метод turnstile.rended для перехвата аргументов, с которыми он был вызван. Например, вы можете сделать инъекцию следующего JavaScript кода на страницу, но, важно - это нужно сделать до того, как был загружен виджет Turnstile.
const i = setInterval(()=>{ if (window.turnstile) { clearInterval(i) window.turnstile.render = (a,b) => { console.log(b) return 'foo' } } },50) -
-
Здравствуйте! Подскажите пожалуйста, возможно каким-либо кодом инициализировать работу этой капчи внутри непосредственно того Урла, который подгружается в айфрейме? Например - https://challenges.cloudflare.com/cdn-cgi/challenge-platform/h/b/turnstile/if/ov2/av0/rcv0/0/bleep/0x4AAAAAAAJel0iaAR3mgkjp/light/normal
-
M Moderator moved this topic from Off topic on