Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
16 Ноя 2018, 09:04
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: 1C отправка PUT запроса в формате JSON  (Прочитано 167 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн receiver

  • *
  • Сообщений: 1
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2018-09-15
  • Сайт: 
  • Профессия: Разработчик 1С
Добрый день.
Столкнулся с проблемой отправки PUT запроса из 1С (8.3.10.2667) с полезными данными JSON, GET и POST запросы работают корректно, все считывается и отправляется. При отправке PUT почему то пустой запрос. Вот код:

     ИмяФайлаОтвета = ПолучитьИмяВременногоФайла();
          ИмяФайлаЗапроса    = ПолучитьИмяВременногоФайла();
      
     ЗаписьJSON = Новый ЗаписьJSON;
           ЗаписьJSON.ОткрытьФайл(ИмяФайлаЗапроса);                  
     СтуктураОперации = Новый Структура;

     СтуктураОперации.Вставить("type_id", 0);
     СтуктураОперации.Вставить("name", РазбитьФИО(документ.заказчик,2));
     СтуктураОперации.Вставить("last_name", РазбитьФИО(документ.заказчик,1));
     СтуктураОперации.Вставить("middle_name", РазбитьФИО(документ.заказчик,3));

     ЗаписатьJSON(ЗаписьJSON, СтуктураОперации);
     ЗаписьJSON.Закрыть();     
     ФайлОтправки = Новый Файл(ИмяФайлаЗапроса);
     РазмерФайлаОтправки = XMLСтрока(ФайлОтправки.Размер());

          ИмяСервера = "мой сервер";
     URL = "/client";
            
     ЗаголовокHTTP = Новый Соответствие;
           ЗаголовокHTTP.Вставить("Host", ИмяСервера);
           ЗаголовокHTTP.Вставить("Connection", "Keep-Alive");
           ЗаголовокHTTP.Вставить("Accept", "application/json");
           ЗаголовокHTTP.Вставить("Authorization", "Мой токен");
           ЗаголовокHTTP.Вставить("Content-Length", РазмерФайлаОтправки);
          ЗаголовокHTTP.Вставить("Content-Type", "application/json; charset=utf-8");    

      
     Соединение = Новый HTTPСоединение(ИмяСервера,,,,,,Новый                     

ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows(),Новый                     

СертификатыУдостоверяющихЦентровWindows()));       

          ЗапросHTTP = Новый HTTPЗапрос(URL, ЗаголовокHTTP);         
     ЗапросHTTP.УстановитьИмяФайлаТела(ИмяФайлаЗапроса);         
     Ответ = Соединение.Записать(ЗапросHTTP);   


Вот что видно отправляется через снифер на сайт на самом деле:
PUT /client HTTP/1.1
Host: -----
User-Agent: 1C+Enterprise/8.3
Authorization: "мой токен"
Content-Type: application/json; charset=utf-8
Connection: Keep-Alive
Accept: application/json
Expect: 100-continue
Content-Length: 0



А вот что должно (по примеру POST) который работает исправно через Соединение.ОтправитьДляОбработки(ИмяФайлаЗапроса, URL, ИмяФайлаОтвета, ЗаголовокHTTP)

К тому же почему то приписывается заголовок Expect: 100-continue...

POST /client HTTP/1.1
Host: -----
User-Agent: 1C+Enterprise/8.3
Authorization: "мой токен"
Content-Type: application/json; charset=utf-8
Connection: Keep-Alive
Accept: application/json
Content-Length: 247

{
"type_id": 1,
"name": "Николай",
"last_name": "Сверидонов",
"middle_name": "Валентинович",
}


Помогите разобраться.


Последний раз редактировалось: receiver; 15 Сен 2018, 10:57


Теги: Json PUT 
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

oleg-x
63 Сообщений
AIFrame AIFrame
58 Сообщений
wise wise
55 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
46 Сообщений
alexandr_ll
46 Сообщений
alex0402
44 Сообщений
BuhRust
30 Сообщений
LexaK
26 Сообщений
andron81_81
24 Сообщений
byte777
21 Сообщений

* Кто онлайн

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal