Имя: Пароль:
1C
1С v8
тест HTTP-сервиса
0 Snik_666
 
19.05.17
10:29
Добрый день! Подскажите как 1с может общаться с HTTP-сервисом опубликованном из 1с ? В браузере урл "http://localhost/ppmen/hs/WebExchange/888/Тестовые данные" выдает приглашение на логин и пароль после ввода которых видно ответ, почему же код ниже выдает ошибку:
Ошибка при вызове метода контекста (Получить): Ошибка работы с Интернет:   Не могу установить соединение

    Сервер = "localhost";            
            Соединение = Новый HTTPСоединение(Сервер,,"web", "777");            
            Заголовки = Новый Соответствие;
            Заголовки.Вставить("Content-Type", "text/html");
            Заголовки.Вставить("host", Сервер);           
            Запрос = Новый HTTPЗапрос("/ppmen/hs/WebExchange/888/Тестовые данные", Заголовки);
            Попытка
                Ответ =Соединение.Получить(Запрос);
                Если Ответ.КодСостояния = 200 Тогда // Данные получены, обрабатываем их
                    ТекстСтраницы= Ответ.ПолучитьТелоКакСтроку();
                    //Выведем тест полученной страницы
                    Сообщить(ТекстСтраницы);
                КонецЕсли;    
            Исключение    
                // исключение здесь говорит о том, что запрос не дошел до HTTP-Сервера    
                Сообщить("Ошибка "+ОписаниеОшибки(),СтатусСообщения.Важное);
                ВызватьИсключение;
            КонецПопытки;
1 Юрий Лазаренко
 
19.05.17
10:34
(0) "Тестовые данные" из URLа убрать немедленно и заменить на нормальную латинницу. В браузере наверно тестишь из хрома? Он кириллицу автоматически перекодирует в "%хх".
2 Snik_666
 
19.05.17
10:38
(1) сделал
Запрос = Новый HTTPЗапрос("/ppmen/hs/WebExchange/888/testing", Заголовки);

не помогло, та-же ошибка
3 Юрий Лазаренко
 
19.05.17
10:40
А в переменной "Сервер" что лежит?
4 Юрий Лазаренко
 
19.05.17
10:41
(2) Оно вряд ли помогло бы сейчас, но в дальнейшем вылезло бы 100%.
5 Snik_666
 
19.05.17
10:42
(4) Сервер = "localhost";
6 Юрий Лазаренко
 
19.05.17
10:42
(5) IP вместо него не пробовал?
7 ГдеСобака Зарыта
 
19.05.17
10:45
А где авторизация в коде?
8 Snik_666
 
19.05.17
10:46
(6) Натолкнул на мысль , фаервол рубил . Спасибо разобрался!
9 Юрий Лазаренко
 
19.05.17
10:49
(8) Для разруливания таких случаев помогает тестирование из браузера в 1С. Кидаешь на форму обработки поле html документа и пробуешь открыть ссылку через него. Если файрвол блочит 1С, то это будет сразу видно.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший