Как отловить POST на стороне 1с в веб сервисах?

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

Решено было отдавать пост запросом по ключу "params" (временное название) json строкой многомерный массив.
Первая же проблема - как получить данные из пост запроса, единственное что смог нагуглить это

Ответ = Новый HTTPСервисОтвет(200);
    Ответ.УстановитьТелоИзСтроки(Запрос.ПараметрыЗапроса.Получить("params"));


Но тут он получает только гет параметры.
  • Вопрос задан
  • 1381 просмотр
Решения вопроса 1
@Dementor
программист, архитектор, аналитик
как получить данные из пост запроса

Из вашего вопроса не понял как вы передаете данные - в POST объект JSON или с помощью multipart/form-data.

В первом случае текст вашего POST легко можно получить с помощью следующей конструкции:
POST_txt = Запрос.ПолучитьТелоКакСтроку();

и далее уже элементарно создаете с JSON объект и работаете с ним:

ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(POST_txt);
Объект_JSON = ПрочитатьJSON(ЧтениеJSON,,"DOC_DATE");  // важно указать все ваши поля типа даты, что бы потом не парсить вручную строки
ЧтениеJSON.Закрыть();

Во втором случае, если я не ошибаюсь, то можно получить значение POST-параметры с помощью упомянутого у вас метода запроса ПараметрыЗапроса() , который возвращает соответствие, где ключами будут названия параметров. Но на практике я это не проверял - для работы с HTML-формами вполне достаточно GET-параметров, а в POST все же удобно писать JSON или XML).
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Искра Екатеринбург
от 80 000 до 100 000 ₽
Art gorka Санкт-Петербург
от 60 000 ₽
25 апр. 2024, в 11:02
5000 руб./за проект
25 апр. 2024, в 10:42
150000 руб./за проект
25 апр. 2024, в 10:41
2000 руб./за проект