|
1С: POST-запрос с типом multipart/form-data | ☑ | ||
---|---|---|---|---|
0
dchumak
18.01.22
✎
07:05
|
Добрый день, коллеги.
Нужно отправить POST-запрос в маркировку. Создал запрос в Postman, оттуда все нормально отправляется, документ создается. При сохранении curl в http получаю примерно такой файл POST /api/v3/true-api/edo-api/outgoing-documents/formal HTTP/1.1 Host: elk.prod.markirovka.ismet.kz Authorization: Bearer ey....Ub2s6iuRFqfGuz44TUAUUt9wF8EC_5jS9p0E Content-Length: 3686 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW ----WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="content" PD94bWwgdmVyc2lvbj0iMS4w.....KPC9maWxlPg0K ----WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="signature" MIIGXQYJKoZIhvcNA.....94v7ESBs58fdc/9AA= ----WebKitFormBoundary7MA4YWxkTrZu0gW bearer - динамический токен content - зашифрованный в бейс64 ХМЛ-файл с данными signature - подпись этого файла Код в 1С выглядит так: ИмяФайлаОтправкиКонец = "E:\XML\message3.txt"; HTTPЗапрос = Новый HTTPЗапрос; HTTPЗапрос.Заголовки.Вставить("POST", "/api/v3/true-api/edo-api/outgoing-documents/formal HTTP/1.1"); HTTPЗапрос.Заголовки.Вставить("Host", "elk.prod.markirovka.ismet.kz"); HTTPЗапрос.Заголовки.Вставить("Content-Type","multipart/form-data"); HTTPЗапрос.Заголовки.Вставить("Authorization", "Bearer " + Токен); HTTPЗапрос.АдресРесурса = ""; HTTPЗапрос.УстановитьИмяФайлаТела(ИмяФайлаОтправкиКонец); Попытка HTTPСоединение = Новый HTTPСоединение(СтрокаСоединения,,,,,,Новый ЗащищенноеСоединениеOpenSSL); ОтветHTTPPost = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос); //POST Исключение ОбщегоНазначенияКлиентСервер.СообщитьПользователю("Неудачная попытка отправки"); КонецПопытки; Попытка ТекстОтвета = ОтветHTTPPost.ПолучитьТелоКакСтроку(КодировкаТекста.UTF8); Если ОтветHTTPPost.КодСостояния <> 200 Тогда Сообщить(ОтветHTTPPost.КодСостояния); Сообщить("Возникли ошибки при передаче заказа. Ответ от СУЗ см. на вкладке ""Ответ СУЗ"""); Сообщить(ТекстОтвета); КонецЕсли; Исключение ВызватьИсключение "Не удалось передать уведомление в маркировку, код состояния: " + ОтветHTTPPost.КодСостояния; КонецПопытки; Получаю ошибку 500. {"code":500,"description":"org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request; ... "error_message":"Failed to parse multipart servlet request; nested exception is java.io.IOException: org.apache.tomcat.util.http.fileupload.FileUploadException: the request was rejected because no multipart boundary was found"} Может кто сталкивался, что я делаю не так? Заранее спасибо. 1С 8.3.18.1289. |
|||
1
dchumak
18.01.22
✎
07:07
|
Пробовал менять кодировку на ANSI - не помогло.
|
|||
2
BaHgaJI
18.01.22
✎
08:57
|
Вот так попробуй: HTTPЗапрос.Заголовки.Вставить("Content-Type","multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW");
|
|||
3
arsik
гуру
18.01.22
✎
08:57
|
||||
4
Ёпрст
18.01.22
✎
09:34
|
(0) должен указать разделитель в теле запроса. Между разделителем твой файл в виде басе64 строки и подписи
|
|||
5
dchumak
18.01.22
✎
09:36
|
(4) ----WebKitFormBoundary7MA4YWxkTrZu0gW это и есть разделитель
|
|||
6
dchumak
18.01.22
✎
09:38
|
(2) пробовал, в этом случае ОтветHTTPPost = неопределено
|
|||
7
Ёпрст
18.01.22
✎
09:39
|
(6) где он у тебя в коде?
|
|||
8
pechkin
18.01.22
✎
09:39
|
У тебя не мультипарт в 1с
|
|||
9
Ёпрст
18.01.22
✎
09:40
|
Ты какую то неведомую хрень в заголовки попихал. А нужно в боди
|
|||
10
dchumak
18.01.22
✎
09:42
|
(7) я взял файл из Postman и его просто загружаю, если он загрузится то сделаю формирование динамически. Из Postman этот cURL отправляется без ошибок.
|
|||
11
pechkin
18.01.22
✎
09:43
|
(7) поставь контент тайп другой тогда
|
|||
12
dchumak
18.01.22
✎
09:45
|
(9) сделал как в Postman, оставил только
HTTPЗапрос.Заголовки.Вставить("Content-Type","multipart/form-data"); HTTPЗапрос.Заголовки.Вставить("Authorization", "Bearer " + Токен); также ошибка 500 |
|||
13
Ёпрст
18.01.22
✎
09:46
|
(10) ты не догоняешь что ле ? У тебя даже пример с курла есть как оно должно быть.
|
|||
14
dchumak
18.01.22
✎
09:46
|
(11) не могу, по документации так должно быть, в cURL в Postman Body имеет тип "form-data"
|
|||
15
Ёпрст
18.01.22
✎
09:47
|
(12) еще раз не надо пихать хрень в заголовки от слова совсем.
|
|||
16
dchumak
18.01.22
✎
09:47
|
(13) хочешь сказать, что убрать все заголовки, данных в файле будет достаточно?
|
|||
17
Ёпрст
18.01.22
✎
09:52
|
(16)
ytn |
|||
18
dchumak
18.01.22
✎
09:53
|
(15) попробовал убрать лишнее
оставил только HTTPЗапрос.Заголовки.Вставить("Content-Type","multipart/form-data"); HTTPЗапрос.Заголовки.Вставить("Authorization", "Bearer " + Токен); иначе ошибки (требование авторизации или неверный тип содержимого запроса) |
|||
19
dchumak
18.01.22
✎
09:57
|
в итоге либо ошибка 500 (если оставляю вот так)
HTTPЗапрос.Заголовки.Вставить("Content-Type","multipart/form-data"); HTTPЗапрос.Заголовки.Вставить("Authorization", "Bearer " + Токен); либо вообще ответ неопределено, если делаю так HTTPЗапрос.Заголовки.Вставить("Content-Type","multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW"); HTTPЗапрос.Заголовки.Вставить("Authorization", "Bearer " + Токен); |
|||
20
Ёпрст
18.01.22
✎
10:01
|
(0) на вот, развлекайся
HTTPСоединение = Новый HTTPСоединение("elk.prod.markirovka.ismet.kz",,,,,,Новый ЗащищенноеСоединениеOpenSSL); ВремГраница = СтрЗаменить(Новый УникальныйИдентификатор, "-", ""); ТелоЗапроса = Новый ТекстовыйДокумент(); ТелоЗапроса.РазделительСтрок = Символы.CR+Символы.LF; ТелоЗапроса.ДобавитьСтроку("--" + ВремГраница); ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""content"";"); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку(ТвойФайлВВидеСтрокиBase64); ТелоЗапроса.ДобавитьСтроку("--" + ВремГраница); ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""signature"";"); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку(ТвояПодптсьВВидеСтроки); ТелоЗапроса.ДобавитьСтроку("--" + ВремГраница + "--"); ТелоЗапросаСтрока = ТелоЗапроса.ПолучитьТекст(); HTTPЗапрос = Новый HTTPЗапрос("api/v3/true-api/edo-api/outgoing-documents/formal HTTP/1.1"); HTTPЗапрос.Заголовки["Content-Type"] = "multipart/form-data; boundary=" + ВремГраница; HTTPЗапрос.Заголовки.Вставить("Authorization", "Bearer " + Токен); HTTPЗапрос.УстановитьТелоИзСтроки(ТелоЗапросаСтрока, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос); |
|||
21
youalex
18.01.22
✎
10:04
|
||||
22
dchumak
18.01.22
✎
11:31
|
(20) спасибо.
Вот так исправил, взлетело HTTPЗапрос = Новый HTTPЗапрос("/api/v3/true-api/edo-api/outgoing-documents/formal"); |
|||
23
azamatagent1985
11.03.22
✎
07:35
|
Добрый день,
у меня такая же ошибка при попытке отправить http-запрос на отправку исходящего Акта приема-передачи по маркировке: content = ПолучитьДокументXMLПриОтправкеАкта(ДокументСсылка); // функция возвращает строку в виде XML Акта ПП content = ПолучитьДвоичныеДанныеИзСтроки(content); content = СтрЗаменить(СтрЗаменить(Base64Строка(content), Символы.ВК, ""), Символы.ПС,""); // Акт ПП в Base64 signature = СтруктураПараметров["ПолеDATA"]; // подпись ЭЦП signature = ПолучитьДвоичныеДанныеИзСтроки(signature); signature = СтрЗаменить(СтрЗаменить(Base64Строка(signature), Символы.ВК, ""), Символы.ПС,""); // подпись ЭЦП в Base64 // далее - формирование тела запроса в формате "multipart/form-data" по (20) Разделитель = СтрЗаменить(Строка(Новый УникальныйИдентификатор()), "-", ""); ТелоЗапроса = Новый ТекстовыйДокумент(); ТелоЗапроса.РазделительСтрок = Символы.ВК + Символы.ПС; ТелоЗапроса.ДобавитьСтроку("--" + Разделитель); ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""content"";"); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку(content); ТелоЗапроса.ДобавитьСтроку("--" + Разделитель); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""signature"";"); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку(signature); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку("--" + Разделитель + "--"); ТелоЗапроса = ТелоЗапроса.ПолучитьТекст(); АдресРесурса = "/api/v3/true-api/edo-api/outgoing-documents/formal"; Заголовки = Новый Соответствие; Заголовки.Вставить("Content-Type", "multipart/form-data; boundary=" + Разделитель); Заголовки.Вставить("Authorization", СтрШаблон("Bearer %1", ТокенАкторизации)); // ТокенАвторизации - динамически получаемый параметр вида "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9........." HTTPСоединение = Новый HTTPСоединение("stage.ismet.kz", 443, Неопределено, Неопределено, Неопределено, 0, Новый ЗащищенноеСоединениеOpenSSL(Неопределено, Неопределено)); // "stage.ismet.kz" - тестовая ИС по маркировке HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, Заголовки); HTTPЗапрос.УстановитьТелоИзСтроки(ТелоЗапроса, "UTF-8", ИспользованиеByteOrderMark.НеИспользовать); Попытка HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос); ТекстОтвета = СокрЛП(HTTPОтвет.ПолучитьТелоКакСтроку()); Исключение КонецПопытки; В результате получаю ошибку с кодом состояния 500 {"error_message":"Ошибка при выполнении запроса"}. В Postman дается более подробный ответ: { "code": 500, "description": "org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request; ................... "error_message": "Failed to parse multipart servlet request; nested exception is java.io.IOException: org.apache.tomcat.util.http.fileupload.FileUploadException: the request was rejected because no multipart boundary was found" } |
|||
24
azamatagent1985
11.03.22
✎
08:16
|
(22) Как у Вас получилось, можете привести работающий пример?
|
|||
25
novichok79
11.03.22
✎
09:41
|
у вас же написано, the request was rejected because no multipart boundary was found.
нет маркера, который отделяет составные части сообщения. |
|||
26
Ёпрст
11.03.22
✎
10:39
|
(23) перед вторым ТелоЗапроса.ДобавитьСтроку("Content-Disposition: нужно еще раз добавить разделитель
|
|||
27
azamatagent1985
11.03.22
✎
11:55
|
Переделал так:
ТелоЗапроса = Новый ТекстовыйДокумент(); ТелоЗапроса.РазделительСтрок = Символы.ВК + Символы.ПС; ТелоЗапроса.ДобавитьСтроку("--" + Разделитель); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""content"";"); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку(content); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку("--" + Разделитель); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""signature"";"); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку(signature); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку("--" + Разделитель + "--"); ТелоЗапроса = ТелоЗапроса.ПолучитьТекст(); Тело запроса в "multipart/form-data" выглядит теперь следующим образом: --e64ec586c7e64a86a53ce9dee082cbcd Content-Disposition: form-data; name="content"; PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGZpbGUgeG1sbnM6eHNp................................ --e64ec586c7e64a86a53ce9dee082cbcd Content-Disposition: form-data; name="signature"; TUlJUHZ3WUpLb1pJaHZjTkFRY0NvSUlQc0RDQ0Q2d0NBUUV4RGpBTUJnZ3FndzREQ2dFREFRVUFNQzBHQ1................................ --e64ec586c7e64a86a53ce9dee082cbcd-- Казалось бы все нормально, передаются корректные "content" и "signature" в Base64, но теперь приходит другая ошибка с кодом состояния 500: {"code":500,"description":"org.springframework.web.multipart.support.MissingServletRequestPartException: Required request part 'content' is not present\n\tat org.springframework.web.multipart.support........ ............................................................................................................................................................................................................... "error_message":"Required request part 'content' is not present"} |
|||
28
Ёпрст
11.03.22
✎
12:04
|
(27) надо повыкидывать лишние ТелоЗапроса.ДобавитьСтроку(""); перед ТелоЗапроса.ДобавитьСтроку("--" + Разделитель);
|
|||
29
Ёпрст
11.03.22
✎
12:11
|
|
|||
30
azamatagent1985
11.03.22
✎
13:34
|
(29)
ВремГраница = СтрЗаменить(Строка(Новый УникальныйИдентификатор()), "-", ""); ТелоЗапроса = Новый ТекстовыйДокумент(); ТелоЗапроса.РазделительСтрок = Символы.CR+Символы.LF; ТелоЗапроса.ДобавитьСтроку("--" + ВремГраница); ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""content"""); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку(content); ТелоЗапроса.ДобавитьСтроку("--" + ВремГраница); ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""signature"""); ТелоЗапроса.ДобавитьСтроку(""); ТелоЗапроса.ДобавитьСтроку(signature); ТелоЗапроса.ДобавитьСтроку("--" + ВремГраница + "--"); ТелоЗапросаСтрока = ТелоЗапроса.ПолучитьТекст(); Использовал такой вариант, но ошибка по прежнему "error_message":"Required request part 'content' is not present" |
|||
31
Ёпрст
11.03.22
✎
13:43
|
(30) и че у тебя в content ? И точно там form-data, а не json какой должен быть ?
|
|||
32
Ёпрст
11.03.22
✎
13:44
|
а ну вот.. я тя там xml судя по коду.
|
|||
33
Ёпрст
11.03.22
✎
13:49
|
ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""content""; filename=""file.xml");
ТелоЗапроса.ДобавитьСтроку("Content-Type: text/xml; charset=utf-8"); так, хотя бы.. |
|||
34
azamatagent1985
14.03.22
✎
08:33
|
От тех. поддержки получил CURL запроса, проверил в Postman, работает. Как такой запрос реализовать в 1С?
curl --location --request POST 'https://stage.ismet.kz/api/v3/true-api/edo-api/outgoing-documents/formal' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwcm9kdWN0X2dyb3VwX2luZm8iOlt7Im5hbWUiOiJscCIsInN0YXR1cyI6IjUiLCJ0eXBlcyI6WyJSRVRBSUwiLCJQUk9EVUNFUiIsIklNUE9SVEVSIiwiVFJBREVfUEFSVElDSVBBTlQiLCJXSE9MRVNBTEVSIl19LHsibmFtZSI6Im1pbGsiLCJzdGF0dXMiOiI1IiwidHlwZXMiOlsiUFJPRFVDRVIiLCJSRVRBSUwiLCJJTVBPUlRFUiIsIlRSQURFX1BBUlRJQ0lQQU5UIiwiV0hPTEVTQUxFUiJdfSx7Im5hbWUiOiJzaG9lcyIsInN0YXR1cyI6IjUiLCJ0eXBlcyI6WyJSRVRBSUwiLCJQUk9EVUNFUiIsIklNUE9SVEVSIiwiVFJBREVfUEFSVElDSVBBTlQiLCJXSE9MRVNBTEVSIl19LHsibmFtZSI6InBoYXJtYSIsInN0YXR1cyI6IjUiLCJ0eXBlcyI6WyJSRVRBSUwiLCJQUk9EVUNFUiIsIklNUE9SVEVSIiwiVFJBREVfUEFSVElDSVBBTlQiLCJXSE9MRVNBTEVSIiwiTUVESUNBTCJdfSx7Im5hbWUiOiJhbGNvaG9sIiwic3RhdHVzIjoiNSIsInR5cGVzIjpbIlBST0RVQ0VSIiwiVFJBREVfUEFSVElDSVBBTlQiLCJXSE9MRVNBTEVSIl19LHsibmFtZSI6IndhdGVyIiwic3RhdHVzIjoiNSIsInR5cGVzIjpbIlJFVEFJTCIsIlBST0RVQ0VSIiwiSU1QT1JURVIiLCJUUkFERV9QQVJUSUNJUEFOVCIsIldIT0xFU0FMRVIiXX0seyJuYW1lIjoidG9iYWNjbyIsInN0YXR1cyI6IjUiLCJ0eXBlcyI6WyJQUk9EVUNFUiIsIlJFVEFJTCIsIklNUE9SVEVSIiwiVFJBREVfUEFSVElDSVBBTlQiLCJXSE9MRVNBTEVSIl19XSwidXNlcl9zdGF0dXMiOiJCTE9DS0VEIiwidXNlcl9uYW1lIjpudWxsLCJpbm4iOiI5NzAyMDkzMDEzMzIiLCJwaWQiOjYwMDAwMDIyNCwiYXV0aG9yaXRpZXMiOlsiQ1JQVC1LTS1PUkRFUlMuT1JERVItRkFDQURFLUNPTlRST0xMRVIuTU9ESUZZSU5HLldSSVRFIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuU0hJUE1FTlQuQ1JFQVRFIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuUkVBR0dSRUdBVElPTi5DUkVBVEUiLCJST0xFX0hFQURfVFAiLCJDUlBULUtNLU9SREVSUy5PUkRFUi1GQUNBREUtQ09OVFJPTExFUi5DUkVBVElORy1EUkFGVC5DUkVBVEUiLCJDUlBULUZBQ0FERS5ET0MtQ09OVFJPTExFUi5SRU1BUktJTkcuQ1JFQVRFIiwiQ1JQVC1LTS1PUkRFUlMuT1JERVItRkFDQURFLUNPTlRST0xMRVIuUkVBRElORy1CWS1PUEVSQVRPUi5DUkVBVEUiLCJST0xFX09SR19JTVBPUlRFUiIsIlJPTEVfVVNFUiIsIlJPTEVfT1JHX1RSQURFX1BBUlRJQ0lQQU5UIiwiQ1JQVC1LTS1PUkRFUlMuT1JERVItRkFDQURFLUNPTlRST0xMRVIuUkVBRElORy1CWS1TVVouQ1JFQVRFIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuQ09OVFJBQ1QtQ09NTUlTU0lPTklORy5DUkVBVEUiLCJDUlBULUtNLU9SREVSUy5PUkRFUi1GQUNBREUtQ09OVFJPTExFUi5NT0RJRllJTkctRFJBRlQuQ1JFQVRFIiwiUk9MRV9PUkdf0KDQvtC30L3QuNGH0L3QsNGPINGC0L7RgNCz0L7QstC70Y8iLCJDUlBULUZBQ0FERS5ET0MtQ09OVFJPTExFUi5BQ0NFUFRBTkNFLlJFQUQiLCJST0xFX09SR1_Qo9GH0LDRgdGC0L3QuNC6INC-0LHQvtGA0L7RgtCwIiwiUk9MRV9PUkdfV0hPTEVTQUxFUiIsIkNSUFQtRkFDQURFLkNJUy1DT05UUk9MTEVSLlJFUE9SVC5ET1dOTE9BRCIsIlJPTEVfU1VaIiwiQ1JQVC1LTS1PUkRFUlMuT1JERVItRkFDQURFLUNPTlRST0xMRVIuTU9ESUZZSU5HLURSQUZULlJFQUQiLCJDUlBULUZBQ0FERS5BUFAtVVNFUi1DT05UUk9MTEVSLkxJU1QtQUNUSVZFLlJFQUQiLCJDUlBULUZBQ0FERS5ET0MtQ09OVFJPTExFUi5TSElQTUVOVC5SRUFEIiwiUk9MRV9PUkdfUFJPRFVDRVIiLCJDUlBULUtNLU9SREVSUy5PUkRFUi1GQUNBREUtQ09OVFJPTExFUi5NT0RJRllJTkcuQURNSU5JU1RSQVRJT04iLCJDUlBULUtNLU9SREVSUy5PUkRFUi1GQUNBREUtQ09OVFJPTExFUi5SRUFESU5HLUJZLU9QRVJBVE9SLlJFQUQiLCJDUlBULUZBQ0FERS5ET0MtQ09OVFJPTExFUi5SRUNFSVBULkNSRUFURSIsIkNSUFQtRkFDQURFLkRPQy1DT05UUk9MTEVSLklNUE9SVC1DT01NSVNTSU9OSU5HLkNSRUFURSIsIlJPTEVfT1JHX9CY0LzQv9C-0YDRgtC10YAg0YLQvtCy0LDRgNCwIiwiQ1JQVC1LTS1PUkRFUlMuT1JERVItRkFDQURFLUNPTlRST0xMRVIuTU9ESUZZSU5HLkRPV05MT0FEIiwiQ1JQVC1LTS1PUkRFUlMuT1JERVItRkFDQURFLUNPTlRST0xMRVIuUkVBRElORy5SRUFEIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuUkVNQVJLSU5HLlJFQUQiLCJDUlBULUtNLU9SREVSUy5PUkRFUi1GQUNBREUtQ09OVFJPTExFUi5NT0RJRllJTkcuREVMRVRFIiwiRUxLLVJFR0lTVFJBVElPTi5SRUFEIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuQUNDRVBUQU5DRS5DUkVBVEUiLCJDUlBULUtNLU9SREVSUy5PUkRFUi1GQUNBREUtQ09OVFJPTExFUi5NT0RJRllJTkcuUkVBRCIsIkNSUFQtRkFDQURFLkRPQy1DT05UUk9MTEVSLklOREktQ09NTUlTU0lPTklORy5DUkVBVEUiLCJST0xFX0FETUlOIiwiQ1JQVC1GQUNBREUuUFJPRklMRS1DT05UUk9MTEVSLkNPTVBBTlkuUkVBRCIsIkNSUFQtRkFDQURFLkRPQy1DT05UUk9MTEVSLkFHR1JFR0FUSU9OLkNSRUFURSIsIkNSUFQtS00tT1JERVJTLk9SREVSLUZBQ0FERS1DT05UUk9MTEVSLlJFQURJTkcuQ1JFQVRFIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuQ09NTUlTU0lPTklORy5SRUFEIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuRElTQUdHUkVHQVRJT04uUkVBRCIsIkNSUFQtS00tT1JERVJTLk9SREVSLUZBQ0FERS1DT05UUk9MTEVSLkNSRUFUSU5HLURSQUZULlJFQUQiLCJDUlBULUZBQ0FERS5NQVJLRUQtUFJPRFVDVFMtQ09OVFJPTExFUi5SRUFEIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuQUdHUkVHQVRJT04uUkVBRCIsIkNSUFQtRkFDQURFLkFQUC1VU0VSLUNPTlRST0xMRVIuTElTVC1SRU1PVkVELlJFQUQiLCJST0xFX09SR19NRURJQ0FMIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuS00tQVBQTElFRC1DQU5DRUwuQ1JFQVRFIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuQ09NTUlTU0lPTklORy5DUkVBVEUiLCJDUlBULUZBQ0FERS5ET0MtQ09OVFJPTExFUi5ESVNBR0dSRUdBVElPTi5DUkVBVEUiLCJDUlBULUZBQ0FERS5ET0MtQ09OVFJPTExFUi5MT0FOLkNSRUFURSIsIkNSUFQtS00tT1JERVJTLk9SREVSLUZBQ0FERS1DT05UUk9MTEVSLk1PRElGWUlORy5DUkVBVEUiLCJST0xFX09SR1_Qn9GA0L7QuNC30LLQvtC00LjRgtC10LvRjCIsIklOTl85NzAyMDkzMDEzMzIiLCJFTEstUkVHSVNUUkFUSU9OLldSSVRFIiwiQ1JQVC1GQUNBREUuQ0lTLUNPTlRST0xMRVIuU0VBUkNILlJFQUQiLCJST0xFX09SR1_QntC_0YLQvtCy0LDRjyDRgtC-0YDQs9C-0LLQu9GPIiwiQ1JQVC1GQUNBREUuUFJPRklMRS1DT05UUk9MTEVSLkNPTVBBTlkuQ1JFQVRFIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuUkVBR0dSRUdBVElPTi5SRUFEIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuTE9BTi5SRUFEIiwiQ1JQVC1LTS1PUkRFUlMuT1JERVItRkFDQURFLUNPTlRST0xMRVIuUkVBRElORy1CWS1TVVouUkVBRCIsIlJPTEVfT1JHX9Cc0LXQtNC40YbQuNC90YHQutCw0Y8g0L7RgNCz0LDQvdC40LfQsNGG0LjRjyIsIkVMSy1SRUdJU1RSQVRJT04uQ1JFQVRFIiwiQ1JQVC1GQUNBREUuRE9DLUNPTlRST0xMRVIuS00tQ0FOQ0VMLkNSRUFURSIsIlJPTEVfT1JHX1JFVEFJTCJdLCJjbGllbnRfaWQiOiJjcnB0LXNlcnZpY2UiLCJmdWxsX25hbWUiOiLQkdOY0JfQhtCb0KXQkNCdINCU0IbQndCc0rDQpdCQ0JzQldCUINCh0JDQmdCb0JDQo9Kw0JvQqyIsInNjb3BlIjpbInRydXN0ZWQiXSwiaWQiOjYwMDAwMjA2MiwiZXhwIjoxNjQ3MjY3NzkwLCJvcmdhbmlzYXRpb25fc3RhdHVzIjoiUkVHSVNURVJFRCIsImp0aSI6IjBlNDRjMmE2LTY3OTQtNDBlNy05ZDdjLTA1NWMyYjM4NjViMyJ9.MT5VKUzPWfOHjpp9ejMXsU19vIj536yH1GEuO8U2_Eo' \ --form 'content="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxmaWxlIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIGZpbGVJZD0iRUVVX0FDVF8yZTQ3Y2ZkZS05YzY4LTRkODktODU3OC1hMGNhYzMyMWNjOTIiIHZlcnNpb249IjEuMCIgc2VuZGluZ0RhdGVUaW1lPSIyMDIyLTAzLTE0VDAzOjQ2OjUxWiIgeHNpOm5vTmFtZXNwYWNlU2NoZW1hTG9jYXRpb249InhzZF9hY3QueHNkIj4NCgk8cGFydGljaXBhbnRzIHN1cHBsaWVySWQ9Ijk3MDIwOTMwMTMzMiIgY29uc2lnbmVlSWQ9Ijk4MTIwNDM1MDg1MyIvPg0KCTxkb2N1bWVudCBvcGVyYXRpb25UeXBlPSIxIiBjb3JyZWN0aW9uRmxhZz0iZmFsc2UiPg0KCQk8bWFpbkluZm8+DQoJCQk8c3VwcGxpZXJJbmZvIHN1cHBsaWVyTmFtZT0i0JjQnyDQkdOY0JfQhtCb0KXQkNCdINCU0IbQndCc0rDQpdCQ0JzQldCUINCh0JDQmdCb0JDQo9Kw0JvQq9CY0J8iIHN1cHBsaWVySWRlbnRpZmljYXRpb25Db2RlPSI5NzAyMDkzMDEzMzIiLz4NCgkJCTxjb25zaWduZWVJbmZvIGNvbnNpZ25lZU5hbWU9ItCY0J8g0JrQkNCR0JjQmtCV0J0g0JDQm9Cc0JDQlyDQkdCj0KLQkNCR0JXQmtKw0JvQqyIgY29uc2lnbmVlSWRlbnRpZmljYXRpb25Db2RlPSI5ODEyMDQzNTA4NTMiLz4NCgkJPC9tYWluSW5mbz4NCgkJPHByb2R1Y3RMaXN0Pg0KCQkJPGlDb2RlIGNvdW50PSIxMCI+MDEwNDYwMDI2NjAwNTc1NTIxJ1c4O0lqMTwvaUNvZGU+DQoJCQk8aUNvZGUgY291bnQ9IjEwIj4wMTA0NjAwMjY2MDA1NzU1MjEhK2VKTEhLPC9pQ29kZT4NCgkJCTxpQ29kZSBjb3VudD0iMTAiPjAxMDQ2MDAyNjYwMDU3NTUyMShMcXJxU3U8L2lDb2RlPg0KCQk8L3Byb2R1Y3RMaXN0Pg0KCQk8cHJvZHVjdFRvdGFscz4NCgkJCTxndGluIGNvdW50PSIzMCI+MDAwMDAwNDYwODIyNTE8L2d0aW4+DQoJCTwvcHJvZHVjdFRvdGFscz4NCgk8L2RvY3VtZW50Pg0KPC9maWxlPg"' \ --form 'signature="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"' |
|||
35
Serginio1
14.03.22
✎
12:43
|
||||
36
Ёпрст
14.03.22
✎
20:51
|
(34)
так пробуй ТелоЗапроса.ДобавитьСтроку("Content-Disposition: form-data; name=""content""); ТелоЗапроса.ДобавитьСтроку("Content-Type: text/plain"); |
|||
37
azamatagent1985
17.03.22
✎
13:24
|
Проблема решилась, с запросом все в порядке было, ошибка была в подписи параметра тела запроса "signature". Спасибо за советы.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |