8.х проверка капчи в post запросе

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем zic991, 27 авг 2016.

  1. TopicStarter Overlay
    zic991
    Offline

    zic991

    Регистрация:
    27 авг 2016
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Подскажите Пожалуйста как проверить капчу, получить "validCaptcha":true

    код программы:

    Код:
    &НаСервере
    Процедура ПроверкаНаСервере( )
    
    Сервер = "dkbm-web.autoins.ru";
    Путь = "/dkbm-web-1.0/osagovehicle.htm";
    
    Попытка
    Соединение = Новый HTTPСоединение(Сервер);
    //соединение.ПолучитьЗаголовки(
    Исключение
    Server.ОбработатьИсключение("Не удалось установить соединение с сервером:" +Сервер
    + Символы.ПС + ИнформацияОбОшибке().Описание);
    //Возврат Ложь;
    КонецПопытки;
    
    Попытка
    Ответ = Соединение.GET(Новый HTTPЗапрос("dkbm-web-1.0/osagovehicle.htm"));
    Исключение
    Server.ОбработатьИсключение(ОписаниеОшибки());
    //Возврат Ложь;
    КонецПопытки;
    
    JSESSIONID =лев( WebServer.json_encode(Ответ.Заголовки ["Set-Cookie"]),44);
    
    Заголовки = Новый Соответствие();
    Заголовки.Вставить("Accept","image/webp,image/*,*/*;q=0.8");
    Заголовки.Вставить("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    Заголовки.Вставить("Cookie","JSESSIONID="+JSESSIONID);
    Заголовки.Вставить("Host","dkbm-web.autoins.ru");
    Заголовки.Вставить("Referer","http://dkbm-web.autoins.ru/dkbm-web-1.0/osagovehicle.htm");
    
    Попытка
    Ответ1 = Соединение.GET(Новый HTTPЗапрос("dkbm-web-1.0/simpleCaptcha.png",Заголовки));
    Исключение
    Server.ОбработатьИсключение(ОписаниеОшибки());
    КонецПопытки;
    КартинкаКапчи = Ответ1.ПолучитьТелоКакДвоичныеДанные();
    Капча = ПоместитьВоВременноеХранилище(КартинкаКапчи, УникальныйИдентификатор);
    
    
    
    КонецПроцедуры
    
    &НаКлиенте
    Процедура Проверить(Команда)
    Заголовки1 = Новый Соответствие();
    
    Заголовки1.Вставить("Accept","application/json");
    Заголовки1.Вставить("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    Заголовки1.Вставить("Cookie","JSESSIONID="+JSESSIONID);
    Заголовки1.Вставить("Connection","keep-alive");
    Заголовки1.Вставить("Host","dkbm-web.autoins.ru");
    Заголовки1.Вставить("Referer","http://dkbm-web.autoins.ru/dkbm-web-1.0/osagovehicle.htm");
    
    ПараметрыЗапроса = Новый Структура();
    ПараметрыЗапроса.Вставить("serialOsago",СерияПолиса);
    ПараметрыЗапроса.Вставить("numberOsago",НомерПолиса);
    ПараметрыЗапроса.Вставить("dateRequest",ДатаПроверки);
    ПараметрыЗапроса.Вставить("answer",ТекстКапчи);
    
    СодержимоеЗапроса = Новый HTTPЗапрос("/dkbm-web-1.0/osagovehicle.htm", Заголовки1);
    СодержимоеЗапроса.УстановитьТелоИзСтроки("serialOsago="+СерияПолиса+"&numberOsago="+НомерПолиса+"&dateRequest="+ДатаПроверки+"&answer="+ТекстКапчи);
    
    
    Соединение = Новый HTTPСоединение("dkbm-web.autoins.ru");
    
    Попытка
    Ответ2 = Соединение.POST(СодержимоеЗапроса);
    
    Исключение
    Server.ОбработатьИсключение(ОписаниеОшибки());
    //Возврат Ложь;
    КонецПопытки;
    
    Результат = Ответ2.ПолучитьТелоКакСтроку()+ Ответ2.КодСостояния;
    
    КонецПроцедуры
    
    &НаКлиенте
    Процедура ПриОткрытии()
    
    ПроверкаНаСервере( );
    КонецПроцедуры
    Последнее редактирование модератором: 29 авг 2016
  2. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Воспользоваться сервисами распознавания капч. Какое отношение вы имеете к страхованию ?

Поделиться этой страницей