|
Отправка POST запроса в Честный знак | ☑ | ||
---|---|---|---|---|
0
IVT_2009
11.11.21
✎
08:28
|
Добрый день!
Есть запрос на отправку акта списания табачной продукции в Честный знак. <code> ПолеФормы = Новый Структура; ПолеФормы.Вставить("ИмяПоля", "jsonFile"); ПолеФормы.Вставить("ИмяФайла", "data.json"); ПолеФормы.Вставить("Тип", "application/json"); ПолеФормы.Вставить("Тело", СериализованнаяСтрока); ПоляФормы = Новый Массив; ПоляФормы.Добавить(ПолеФормы); ДанныеПреобразования = ДвоичныеДанныеPOSTЗапросаКакФорма(ПоляФормы); ТелоЗапроса = ДанныеПреобразования.ДвоичныеДанные; Размер = ДанныеПреобразования.Размер; ТокенДоступа = вернутьТокен(); ЗащищенноеСоединение = Новый ЗащищенноеСоединениеOpenSSL(Неопределено, Новый СертификатыУдостоверяющихЦентровОС()); HTTPСоединение = Новый HTTPСоединение("markirovka.crpt.ru", 443, ,,, 60, ЗащищенноеСоединение); ЗаголовокHTTP = Новый Соответствие(); а = мрМаркировка.подписатьЭлементомСписка(СериализованнаяСтрока, 1); ЗаголовокHTTP.Вставить("X-Signature", а); ЗаголовокHTTP.Вставить("Content-Type", "multipart/form-data; boundary="+ДанныеПреобразования.Разделитель); ЗаголовокHTTP.Вставить("Accept", "application/json"); ЗаголовокHTTP.Вставить("Accept-Charset", "utf-8"); ЗаголовокHTTP.Вставить("Content-Lenght", Формат(Размер, "ЧН=0; ЧГ=0;")); ЗаголовокHTTP.Вставить("Authorization", "Bearer " + ТокенДоступа); ПараметрыURL = Новый Массив; ПараметрыURL.Добавить("pg=tobacco"); URLЗапроса = "/api/v3/true-api/documents/dropped-out/create"; HTTPЗапрос = Новый HTTPЗапрос(URLЗапроса, ЗаголовокHTTP); HTTPЗапрос.УстановитьТелоИзСтроки("jsonFile="+ТелоЗапроса); Ответ1 = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос); ответ = Ответ1.ПолучитьТелоКакСтроку(); </code> На выходе жалуется, что: {"error_message":"Должно быть заполнено одно поле xmlFile или jsonFile"} В документации написано : Пример запроса для документа в формате * .xml: curl -X POST "<url стенда>/documents/dropped-out/create" -H "X-Signature: <string>" -H "Content-Type: multipart/form-data" -H "accept: application/json" -H"Authorization: Bearer <Токен>" --form "xmlFile=@/C:/Users/Desktop/XXX.xml" как в 1с указать конструкцию: --form "xmlFile=@/C:/Users/Desktop/XXX.xml" и что это такое ? |
|||
1
IVT_2009
11.11.21
✎
08:58
|
Проблема пока решена:
я передал в тело сжатые данные, а нужно было строкой |
|||
2
IVT_2009
12.11.21
✎
12:38
|
Другой вопрос. Кто делал интеграцию по табаку, что содержится в поле: X-Signature ?
Подписанный открепленной подписью и зашифрованный документ или открепленная подпись? Возможно есть пример отправки документа из под 1с ? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |