Отправка AJAX запроса в базу 1С, GET и POST
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Ваша вэб страничка может отправлять и получать данные опубликованной базы 1С, используя HTTP сервис.
Используем для отправки и получения ajax запрос.
Ajax запрос реализован в файле: testajax.html
В примере ajax отправляет GET или POST запрос в базу 1С.
После отправки запроса в 1С, ajax ждет ответ от 1С, при выполнении ajax запроса, на стороне 1С происходит чтение входящих параметров, формируется и отправляется ответ, ajax запрос получает ответ, в примере ответ от 1С это просто текстовая строка, после получения ответа ajax покажет на страничке строку ответа 1С.
Реализация примера сделана на пустой конфигурации, по аналогии вы сможете сделать свои ajax запросы к своим 1С базам.
Делайте все по шагам, и все заработает.
Тестирование производилось на релизе: 8.3.25.1374
Описание разворачивания примера только для Apache!
- Разверните у себя базу из dt файла, база может быть файловая или клиент-серверная, это неважно.
- Опубликуйте HTTP сервис базы.

- Далее перезапустите Apache, убедитесь, что публикация выполнена правильно. Т.е. HTTP сервис работает. В браузере вводим адрес публикации, в примере это: http://localhost/ZuPCorp/hs/teaj (у вас адрес может быть другой). Параметров пока нет, ответ 1С HTTP сервиса будет такой.
Пользователей в базе нет, поэтому вэб сервис 1С не будет запрашивать авторизацию. Пример работы с пользователями рассмотрим позже. - Переходим к html файлу. Откройте файл testajax.html для редактирования, проверьте, совпадает ли адрес вашей публикации из предыдущего пункта, с тем что в файле.
Если не совпадает, отредактируйте, сохраните, закройте файл. Для работы ajax скрипт должен работать в одном пространстве с публикацией 1С (это очень важно! в нашем примере это пространство http://localhost). Для этого необходимо открыть файл через этот же вэб сервис. Копируем файл testajax.html в директорию по умолчанию Apache, у меня это "c:\Apache24\htdocs\", у вас может быть другая.
Проверяем, в браузере по адресу http://localhost/testajax.html должен быть такой результат:

- Все готово для работы ajax, пробуем магию ajax: нажимаем кнопку "Отправить GET в 1С". Скрипт отправит GET запрос в публикацию 1С, пока запрос выполняется и скрипт ждет ответ от 1С, пользователь видит динамическое колесико.
В журнале регистраций 1С выполняется запись входящего запроса.
В ответ 1С отправляет строковый ответ. Результат ответа будет показан:
Аналогично работает и POST запрос. В 1С запись журнала регистраций будет выглядеть так:
Результат ответа 1С:

Если есть в базе 1С пользователи.
Для проверки работоспособности, в конфигурации добавляем пользователя. Для этого добавляем роль с правами Администратора (не забываем поставить галки на использование нашего HTTP сервиса), сохраняем конфигурацию. Создаем пользователя Админ, пароль 1

Предлагаю 2 решения:
- Прописываем пользователя и пароль в файле настройки публикации. Файл находится в каталоге публикации базы, в нашем случае это каталог C:\1C_Web\ZuP_Corp\

Открываем файл default.vrd для редактирования и добавляем пользователя и пароль.
Слева до изменения, справа добавлена строка с пользователем и паролем.
usr="Админ";pwd="1";

- Второй способ: Прописываем пользователя и пароль в ajax скрипт, в метод open
request.open("GET", Publication1С, '', "Админ", "1");
request.open("POST", Publication1С, '', "Админ", "1");
Вступайте в нашу телеграмм-группу Инфостарт