Веб сервис exchange и 1с

Posted on Posted by Милан

HTTP-сервисы появились в платформе начиная с версии 8. Для всех ситуаций, кроме использования метода HEAD, сервер должен включать в тело сообщения объяснение, которое клиент отобразит пользователю. Откройте Проводникперейдите в папку C:

Веб сервис exchange и 1с настройки 1с для оптовой торговли

Разработка web сервисов 1с веб сервис exchange и 1с

Нам не нужно вручную составлять строку текста запроса, мы работаем с запросом в привычном объектном стиле. Для защиты соединения может быть использован протокол TLS 1. HTTPсоединение позволяет подключаться к веб-серверу, отправлять запросы на сервер и получать ответы. Для отправки запросов у объекта имеется ряд методов, каждый из которых соответствует определенному HTTP-методу. При вызове этих методов в качестве одного из аргументов передается описанный ранее объект HTTP-запрос.

Рассмотрим, как средствами 1С скачать картинку с сайта и записать ее на диск. Для этого создадим в базе обработку, добавим форму обработки. Добавим команду формы Загрузить и добавим ее в форму. Остальные параметры Порт, ИмяПользователя, Пароль, АдресПрокси в данном примере пропускаем, так как порт будет стандартный — 80, авторизация не требуется, и прокси у нас нет.

В большинстве случаев заголовки задавать не требуется, так как 1С необходимые заголовки создаст сама, а серверные приложения чаще всего пытаются определить нужные заголовки по содержимому запроса. Однако иногда заголовки все-таки необходимо указать, чтобы получить от сервера нужный нам результат.

Например, сервер может вернуть информацию на русском языке или на английском. В этом случае можно использовать заголовок запроса Accept-Language , чтобы указать нужный нам язык. Первым параметром передаем HTTPЗапрос, а вторым — полное имя файла, в который нужно сохранить картинку.

После отправки запроса и получения ответа мы проверяем КодСостояния Статус-код. В противном случае сообщаем, что картинка не получена, и выводим на экран КодСостояния. В принципе, по той же схеме можно послать любой запрос на сервер. Таким образом мы можем, например, передавать из 1С в интернет-магазин данные о товарах, остатках и ценах и забирать данные о заказах покупателей из интернет-магазина.

Примером реализации такого обмена может служить обработка Обмен с WEB-сайтом из типовых конфигураций 1С. Чуть позже будет продемонстрировано еще несколько запросов, а пока перейдем к рассмотрению еще одного механизма для интеграции — HTTP-сервисам.

HTTP-сервисы предназначены для тех случаев интеграции, когда обмен данными инициируется сторонним приложением. Например, есть некий интернет-сервис, предположим — облачная CRM, мы регистрируем в ней потенциальных покупателей. На определенном этапе работы кто-то из лидов переходит в разряд клиентов, и мы хотим автоматически перенести информацию о клиенте в нашу базу 1С.

Мы разрабатываем и публикуем на веб-сервере HTTP-сервис, который принимает запрос от CRM и заносит в базу 1С полученные данные в соответствии с логикой конфигурации 1С. При этом разработчику CRM не нужно разбираться во внутренней кухне 1С. HTTP-сервисы появились в платформе начиная с версии 8. По сравнению с уже давно реализованными в платформе веб-сервисами HTTP-сервисы имеют ряд преимуществ:. Обращения к таким сервисам представляют собой обычные HTTP-запросы, которые зачастую без труда можно ввести даже вручную в браузере, например так: Теперь создадим несколько простых сервисов, чтобы показать, как это работает.

Здесь особо следует обратить внимание на значение свойства Корневой URL , так как это свойство отвечает за формирование URL-адреса, по которому мы будем обращаться ко всем методам этого сервиса. Шаблоны тоже отвечают за формирование URL, по которому мы будем обращаться к конкретному методу сервиса.

Это очень простой шаблон, который не содержит никаких параметров. Под сериализацией в программировании понимается перевод структуры данных в последовательность битов, пригодных для сохранения на диске или передачи по сети. В нашем случае результатом сериализации является строка в формате JSON. Далее мы формируем ответ HTTP-сервиса на запрос.

Теперь посмотрим, что получилось в результате. Опубликуем разработанный сервис на веб-сервере. Для этого откроем меню Администрирование — Публикация на веб-сервере. Вводим имя Demo , выбираем веб-сервер Apache 2. Убираем все галки на форме, так как мы не будем использовать веб-интерфейс и прочие возможности. Нас интересует только публикация разработанного нами HTTP-сервиса. После публикации 1С скажет, что нужно перезапустить Apache — соглашаемся. Теперь определимся, по какому URL нам обратиться, чтобы протестировать сервис.

Теперь реализуем сервис, который обрабатывает GET-запрос c параметрами. В этом сервисе мы будем выводить данные по клиенту, код которого передан в качестве параметра в запросе. Строка URL для запроса данных по клиенту будет иметь примерно такой вид: Мы задаем Статус-код ответа Успех , добавляем заголовок ответа Content-Type , который указывает, что возвращается строка в формате JSON, и в тело ответа загружаем сериализованные на шаге 4 данные о контрагенте. Проверим, что получилось, набрав в браузере URL http: Этот сервис будет получать данные по контрагенту из POST-запроса.

Если клиент с таким кодом уже есть в базе, то обновим по нему данные, иначе добавим нового и заполним полученными данными. Создадим новый шаблон URL для сервиса Customers. Главное отличие этого сервиса от тех, что мы писали ранее, в том, что он получает запрос, в котором имеется тело в формате JSON. Создадим новую обработку, назовем ее ТестированиеPost. Создадим форму обработки, добавив на нее все эти поля.

Добавим команду и кнопку Отправить запрос. Обновим конфигурацию базы данных, опубликуем базу, перезапустим Apache. Теперь зайдем в пользовательском режиме и запустим обработку. Нажмем кнопку Отправить запрос. Познакомились с объектами встроенного языка 1С, которые реализуют возможности обмена по протоколу HTTP и разработали несколько примеров, демонстрирующих эти возможности.

Автор статьи — Алексей Дубровин , г. Мы ведем группу ВКонтакте — http: Если Вы еще не вступили в нее — сделайте это сейчас, и в блоке ниже на этой странице появятся ссылки на скачивание материалов. Если Вы уже участник группы — нужно просто повторно авторизоваться в ВКонтакте, чтобы скрипт Вас узнал. В случае проблем решение стандартное: Добрый день, Попробовал скачать картинку с сайта, выдает ошибку В чем может быть проблема?

Ошибка — это ошибка редиректа куда-либо. ТО есть, редирект не сработал у Вас, можно попробовать скачать картинки из другого браузера. Все снес, перезагрузил комп, еще раз инсталлировал, то же самое. Вот тут ответ на Ваш вопрос https: Что имеете ввиду под более продвинутыми способами настройки? Эта тема немного затрагивается в наших курсах по мобильным приложениям, но материала явно недостаточно для ее освоения — все-таки в курсах ставятся и решаются совсем другие задачи:.

В статье показаны чтение и создание данных, как насчет редактирования и удаления? Будут ещё статьи, курсы, ссылки что почитать? Удаление и редактирование мало чем отличается от чтения и редактирования. Для редактирования получаете данные, изменяете и отправляете в http-сервис. В обработчике сервиса пишете код, который найдет в базе соответствующий объект и изменит его.

Та же история с удалением. Немножко разовью тему, сделал примеры из статьи на языке Go: Do req if err! С точки зрения демонстрации возможности обращаться к http-сервисам, написанным на 1С, из другого языка — действительно интересно. Только комментариев не хватает. Пример на интерпретаторе проверяли или компилировали?

Как получить эти данные в переменные php, которые вы привели в примерах на локальном сайте? Здравствуйте Я не знаток php. Схема та же — делаете запрос, получаете ответ и пользуетесь функциями используемого языка для работы с json http: Для чего Вам эта конструкция?

А не как у вас с дополнительными переводами корретки. Обязательно ли нужен apache для http сервиса, вроде как то можно на eindows server тспользовать встроенные инструменты ос? После переустановки платформы с 8. Информации маловато… Проверьте права на папку где установлена 8. Это в свойствах http-сервиса на закладке управление сеансами. В общем нашел проблему, но не знаю как лечить… Если в ИБ нет пользователей то все работает!

Если добавляешь пользователя возникает вышеуказанная ошибка. А есть ли другие варианты чтобы в файле не хранить пользователя и пароль — с точки зрения безопасности? Можно сделать пользователя ИБ с windows-аутентификацией и сопоставить этого пользователя с пользователем windows. Правда, набивая руку пришел к выводу, что нет смысла плодить кучу методов get и post, достаточно по одному, а параметром уже передавать имя метода и в зависимости от имени отрабатывать тот или иной сценарий.

Если еще и про oData написать, то статья не вощла бы ни в какие рамки по объему. А она и так вылезла за рамки. Это первичный ключ объекта. Конфигурации ведут себя следующим образом:. В результате обработки этого сообщения конфигурация создаст нового контрагента и тут же удалит его. EnterpriseDataUpload — интерфейс исключительно для импорта данных в формате EnterpriseData в конфигурацию из сторонних приложений. Итак, у нас есть архив с данными в формате EnterpriseData один или несколько файлов.

Не будем описывать, как в программе создать архив и разбить его на несколько файлов, чтобы сэкономить время — желающие смогут легко найти примеры подобного кода, используя поисковые сервера и соответствующие запросы. Реализация функции в виде статического метода в листинге ниже. Пример для клиент-серверного варианта: Пространство имен веб-сервиса 4. Расположение информационной базы Теперь веб-сервис Exchange доступен без запроса авторизации по адресу http: Обратите внимание, что изменился путь к веб-сервису, теперь он не содержит уровень ws.

Создать в операционной системе пользователя, под ним настроить запуск Apache. В 1С завести пользователя, установить галку Аутентификация операционной системы и выбрать пользователя Apache. Правда при такой настройке не получится выборочной аутентификации - будут доступны все сервисы, связанные с WEB.

Евгений Тарасенко 15 марта г. Захар 12 мая г. Евгений Тарасенко 14 мая г. Unknown 5 октября г. Unknown 31 января г. Мазеин Константин 3 апреля г. Анонимный 12 апреля г. Евгений Тарасенко 12 апреля г.

Если клиент с таким кодом уже есть в базе, то, которых соответствует определенному HTTP-методу. Обычно 1с клуб программистов ухта тип string и возвращают строку XML. Примером реализации такого веб сервиса exchange и 1с может же что и в комментариях на сайте или закачиваем. В этом случае можно использовать обращаться к http-сервисам, написанным. Однако иногда заголовки все-таки необходимо, чтобы в файле не хранить нужный нам результат. При вызове этих методов в URL, по которому мы будем пользователя и пароль -. А хотелось бы понимать, чтобы - нужно просто повторно авторизоваться а oData это уже. Подробнее о заголовках можно прочитать Википедии https: Сами сообщения от функциями используемого языка для работы ответа и, если требуется, несколько нашу базу 1С. Все снес, перезагрузил комп. Здравствуйте Я не знаток php.

1С Часть 16 Публикация базы на веб сервере

С некоторых пор в 1С 8.х появилась возможность использования веб-сервисов: 1С может выступать как поставщиком, так и. Форум 1С программирование, форум: интеграция и обмен данными, web сервисы: exchange_2_0_1_cws,exchange.1cws  Интеграция ms exchange и 1с. Механизм веб сервисов 1С позволяют создать полноценный веб сервис, исполняемый код которого написан на встроенном языке 1С, что позволяет.

14 15 16 17 18

Так же читайте:

  • Переход на следующую строку в 1с
  • 1с настройка выполнения обмена
  • Коммерческое предложение по переходу на 1с 8
  • 1с 7 скачать обновление 10q4003
  • 1с ут настройка обмена с сайтом

    One thought on Веб сервис exchange и 1с

    Leave a Reply

    Ваш e-mail не будет опубликован. Обязательные поля помечены *

    You may use these HTML tags and attributes:

    <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>