Не работает подключение к http сервису 1С ошибка 400
Добрый день. Есть написанный и отлаженный http сервис на платформе 1с 8.3.12
К нему идет подключение с 1с77 при помощи следующих внешних компонент:
MSXML2.XMLHTTP.4.0 - создание соединения и отправка запроса
MSXML2.DOMDocument.4.0 - формирование xml для тела запроса. Сервис принимает post запросы и разбирает тело запроса через объекты XDTO.
Проблема заключается в том, что на тестовой базе 1с77 подключение к сервису и работа с ним идет без ошибок. Но на рабочем сервере где крутится 1с77 вылетают ошибки:
Если подключаться к хттп сервису на 1с83 в файловом варианте, то возвращает ошибку 400,
Если подключаться к хттп сервису на 1с83 в серверном варианте (MS SQL), то возвращает ошибку 500.
Пробовал разворачивать 1с83 и публикацию на другом сервере. Ошибка возникает только когда обращаешься с рабочего сервера где стоит рабочая база 1с77. С других ПК все работает без ошибок.
Система на рабочем сервере с 1с77 Win 2008 R2. Где что можно посмотреть? Может какие-то версии MSXML влияют?
К нему идет подключение с 1с77 при помощи следующих внешних компонент:
MSXML2.XMLHTTP.4.0 - создание соединения и отправка запроса
MSXML2.DOMDocument.4.0 - формирование xml для тела запроса. Сервис принимает post запросы и разбирает тело запроса через объекты XDTO.
Проблема заключается в том, что на тестовой базе 1с77 подключение к сервису и работа с ним идет без ошибок. Но на рабочем сервере где крутится 1с77 вылетают ошибки:
Если подключаться к хттп сервису на 1с83 в файловом варианте, то возвращает ошибку 400,
Если подключаться к хттп сервису на 1с83 в серверном варианте (MS SQL), то возвращает ошибку 500.
Пробовал разворачивать 1с83 и публикацию на другом сервере. Ошибка возникает только когда обращаешься с рабочего сервера где стоит рабочая база 1с77. С других ПК все работает без ошибок.
Система на рабочем сервере с 1с77 Win 2008 R2. Где что можно посмотреть? Может какие-то версии MSXML влияют?
По теме из базы знаний
Найденные решения
Вобщем проблему решил самостоятельно. И чисто случайно.
Оказывается есть 2 разных объекта для работы с хттп-запросами:
MSXML2.XMLHTTP.4.0
и
MSXML2.ServerXMLHTTP.4.0
Заменил первый на второй. Плюс еще разобрался с тем, что второй в текст ответа добавляет мусор. Зато корректно заполняет свойство ResponseXml.
Не знаю, почему в сети того предприятия работает только серверный вариант. Да и разбираться уже не стал. Отмечаю это сообщение как решение.
Оказывается есть 2 разных объекта для работы с хттп-запросами:
MSXML2.XMLHTTP.4.0
и
MSXML2.ServerXMLHTTP.4.0
Заменил первый на второй. Плюс еще разобрался с тем, что второй в текст ответа добавляет мусор. Зато корректно заполняет свойство ResponseXml.
Не знаю, почему в сети того предприятия работает только серверный вариант. Да и разбираться уже не стал. Отмечаю это сообщение как решение.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Забыл уточнить. Доступ к apache c рабочего сервера есть. Ничто нигде не блокирует. Браузер выдает it works. При обращении из 1с в логах апача есть записи в журнале access с ошибками 400 и 500. В журнале регистрации 1с8 нет записей о подключении http сервиса. Ощущение, что формируется какой-то неправильный хттп запрос и апач или сервер 1с его отсекает еще до авторизации.
Есть апдейт по ситуации. Проблема локализовалась внутренней сетью предприятия. Админ реализовал проброс порта 8081 с внутреннего ай-пи сервера где крутится апач, на внешний адрес. Из интернета подключение и работа с хттп сервисом работает без проблем. На любом компьютере в локальной сети предприятия идут ошибки 400 и 500.
Там развернут домен. Но компьютеры не введенные в домен, но включенные в локальную сеть тоже дают такие ошибки. Включил уровень debug в логах апач. Никаких логов в файле errorlog не появляется когда возвращает ошибки 400 и 500.
Там развернут домен. Но компьютеры не введенные в домен, но включенные в локальную сеть тоже дают такие ошибки. Включил уровень debug в логах апач. Никаких логов в файле errorlog не появляется когда возвращает ошибки 400 и 500.
Вобщем проблему решил самостоятельно. И чисто случайно.
Оказывается есть 2 разных объекта для работы с хттп-запросами:
MSXML2.XMLHTTP.4.0
и
MSXML2.ServerXMLHTTP.4.0
Заменил первый на второй. Плюс еще разобрался с тем, что второй в текст ответа добавляет мусор. Зато корректно заполняет свойство ResponseXml.
Не знаю, почему в сети того предприятия работает только серверный вариант. Да и разбираться уже не стал. Отмечаю это сообщение как решение.
Оказывается есть 2 разных объекта для работы с хттп-запросами:
MSXML2.XMLHTTP.4.0
и
MSXML2.ServerXMLHTTP.4.0
Заменил первый на второй. Плюс еще разобрался с тем, что второй в текст ответа добавляет мусор. Зато корректно заполняет свойство ResponseXml.
Не знаю, почему в сети того предприятия работает только серверный вариант. Да и разбираться уже не стал. Отмечаю это сообщение как решение.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот