Зависает в ожидании http-запрос.
Делаю обмен между двумя базами с помощью http сервиса.
Сервис создал с помощью расширения в одной базе, опубликовал на Apache.
Делаю к нему обращение:
Происходит зависание - ничего не происходит.
Но если я захожу в это время в браузер и делаю обращение к этому сервису, то вызванный код из базы приемника 1с тут же получает ответ и все работает. Полагаю, что какая-то проблема с авторизацией. Я захожу через браузер, где уже авторизовался, и тогда он узнает авторство запроса. Что я делаю не так?
Сервис создал с помощью расширения в одной базе, опубликовал на Apache.
Делаю к нему обращение:
СерверИсточник = "localhost";
Попытка
// Создать HTTP-соединение с сервером localhost.
HTTPСоединение = Новый HTTPСоединение(СерверИсточник, , "Администратор","ТутПарольПравильный" );
Исключение
ОбщегоНазначенияКлиентСервер.СообщитьПользователю("Не удалось соединиться с сервером: " + СерверИсточник);
Возврат;
КонецПопытки;
// Создать HTTP-запрос на основе URL.
АдресРесурса = "Retail/hs/payments/start/" +
КодироватьСтроку(Объект.ДатаС,СпособКодированияСтроки.КодировкаURL) +
"/end/"+ КодироватьСтроку(Объект.ДатаПо,СпособКодированияСтроки.КодировкаURL) +
"/";
HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса);
ИмяМетода = "GET";
Попытка
// Получить ответ сервера в виде объекта HTTPОтвет.
Результат = HTTPСоединение.ВызватьHTTPМетод(ИмяМетода, HTTPЗапрос);
ПоказатьПроисходит зависание - ничего не происходит.
Но если я захожу в это время в браузер и делаю обращение к этому сервису, то вызванный код из базы приемника 1с тут же получает ответ и все работает. Полагаю, что какая-то проблема с авторизацией. Я захожу через браузер, где уже авторизовался, и тогда он узнает авторство запроса. Что я делаю не так?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Во-первых, нужно выставить время ожидания HTTPсоединения. во-вторых, я бы запаковал логин и пароль в виде md5 в заголовок HTTPЗапроса. и не плохо было бы видеть код соединения с сервером, какой ответ возвращает сервер на отклик. успешное соединение это 200. ну и на основании ответа уже дальше решать чего ему не хватает.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот