- Регистрация
- 14.01.2020
- Сообщения
- 8
- Благодарностей
- 0
- Баллы
- 1
Всем привет! Прости блондинку за нубство. Но проблема такая. Хочу использовать решение Рекапчи в КМ через POST, GET запросы. Я далеко не профессионалка в этом деле. Установила КМ Lite пробную версию. Вроде бот (использую imacros) отправляет datasitekey, капмонстр вроде подхватывает datasitekey, но бот вываливается с ошибкой. Не могу понять в чем ошибка. Код из моего бота имеет следующий вид (не подумайте, там где заглавные буквы, там вставляются переменные):
var params = "key=" + КЛЮЧ ОТ СЕРВИСА АНТИКАПЧИНГА + "&method=userrecaptcha&googlekey=" +ТУТ DATASITEKEY + "&pageurl=" + ТУТ URI КРАНА + "&json=true&header_acao=1";
var XMLHttpRequest = Components.Constructor("@mozilla.org/xmlextras/xmlhttprequest;1");
var xhr = new XMLHttpRequest();
xhr.open('POST', "http://" + ТУТ ВСТАВЛЯЕТСЯ ХОСТ СЕРВИСА АНТИКАПЧИНГА + "/in.php", false);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
xhr.timeout = 60000;
//КОНСТРУКЦИЯ TRY CATCH
try {
//ОТСЫЛАЕМ ЗАПРОС
xhr.send(params);
if (xhr.status != 200) {
out = {
isSolved: false,
hasError: true,
errorText: xhr.statusText,
answer: ''
};
} else {
var res = JSON.parse(xhr.responseText);
if (res.status == 1) {
//ТУТ ВЫЗЫВАЕТСЯ ФУНКЦИЯ ПРОВЕРЯЮЩАЯ, РЕШЕНА ЛИ РЕКАПЧА.
checkSolution(res.request, anticaptchingKeys);
} else {
out = {
isSolved: false,
hasError: true,
errorText: xhr.statusText,
answer: ''
};
}
}
} catch (e) {
БОТ ВЫВАЛИВАЕТСЯ ТУТ С ОШИБКОЙ е is undefined
out = {
isSolved: false,
hasError: true,
errorText: e.name,
answer: ''
};
}
Правильно ли я отсылаю datasitekey?
var params = "key=" + КЛЮЧ ОТ СЕРВИСА АНТИКАПЧИНГА + "&method=userrecaptcha&googlekey=" +ТУТ DATASITEKEY + "&pageurl=" + ТУТ URI КРАНА + "&json=true&header_acao=1";
var XMLHttpRequest = Components.Constructor("@mozilla.org/xmlextras/xmlhttprequest;1");
var xhr = new XMLHttpRequest();
xhr.open('POST', "http://" + ТУТ ВСТАВЛЯЕТСЯ ХОСТ СЕРВИСА АНТИКАПЧИНГА + "/in.php", false);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
xhr.timeout = 60000;
//КОНСТРУКЦИЯ TRY CATCH
try {
//ОТСЫЛАЕМ ЗАПРОС
xhr.send(params);
if (xhr.status != 200) {
out = {
isSolved: false,
hasError: true,
errorText: xhr.statusText,
answer: ''
};
} else {
var res = JSON.parse(xhr.responseText);
if (res.status == 1) {
//ТУТ ВЫЗЫВАЕТСЯ ФУНКЦИЯ ПРОВЕРЯЮЩАЯ, РЕШЕНА ЛИ РЕКАПЧА.
checkSolution(res.request, anticaptchingKeys);
} else {
out = {
isSolved: false,
hasError: true,
errorText: xhr.statusText,
answer: ''
};
}
}
} catch (e) {
БОТ ВЫВАЛИВАЕТСЯ ТУТ С ОШИБКОЙ е is undefined
out = {
isSolved: false,
hasError: true,
errorText: e.name,
answer: ''
};
}
Правильно ли я отсылаю datasitekey?