|
Проблема с отправкой на сайт xml файла Через HTTP соединение POST запросом | ☑ | ||
---|---|---|---|---|
0
bagu_muslim
25.04.21
✎
07:22
|
HTML пытаюсь отправить файл и вылетает следующая ошибка ошибка " {"detail":"JSON parse error - Unexpected UTF-8 BOM (decode using utf-8-sig): line 1 column 1 (char 0)"}" код ошибки 400 Код приведен ниже.
SSL=Новый ЗащищенноеСоединениеOpenSSL; Соединение = Новый HTTPСоединение(Объект.Адрес,,,,,,SSL); ЗаголовокHTTP = Новый Соответствие(); ЗаголовокHTTP.Вставить("Content-Type", "application/json;charset=utf-8");// пробовал менять контент тайп там еще гуще ошибки вылетают ЗаголовокHTTP.Вставить("Authorization","Bearer "+Токен); Структура=ПолучитьСтруктуруДляXML(); хмл=СформироватьXML(Структура); HTTPЗапрос = Новый HTTPЗапрос("/en/api/v1/shops/update-products-*****/",ЗаголовокHTTP); HTTPЗапрос.УстановитьИмяФайлаТела(хмл); HTTPОтвет = Соединение.ОтправитьДляОбработки(HTTPЗапрос); ОтветВВидеСтроки = HTTPОтвет.ПолучитьТелоКакСтроку(); Сообщить(HTTPОтвет.КодСостояния); Сообщить(ОтветВВидеСтроки); |
|||
1
ДенисЧ
25.04.21
✎
07:25
|
Не раскрыта тема функции СформироватьXML()
Она что возвращает? |
|||
2
bagu_muslim
25.04.21
✎
07:31
|
(1) путь к файлу
|
|||
3
hhhh
25.04.21
✎
07:37
|
(2) она вам насекает, что файл не utf-8
|
|||
4
bagu_muslim
25.04.21
✎
07:48
|
(3) В параметрах записи хмл прописан UTF 8
|
|||
5
Вафель
25.04.21
✎
07:59
|
Так даже в тексте ошибки указано что БОМ виноват
|
|||
6
bagu_muslim
25.04.21
✎
08:08
|
(5) Можно по подробнее? как исправить? ОтправитьДляОбработки в этой функции нету параметра BOM, знаю что в СтрокуКакТело есть пааметр обрабатывать BOM
|
|||
7
hhhh
25.04.21
✎
08:11
|
(4) ну и где тут эта записьXML ? Вы вообще какой-то другой кусок программы выложили, в котором ничего не увидишь.
|
|||
8
bagu_muslim
25.04.21
✎
08:13
|
(7) Функция СформироватьXML(хмл)
КаталогXML = Строка("E:\XML\Файл.xml"); ЗаписьXML = Новый ЗаписьXML; ПараметрыЗАписиХМЛ=Новый ПараметрыЗаписиXML("UTF-8", , Ложь); ЗаписьXML.ОткрытьФайл(КаталогXML); ЗаписьXML.ЗаписатьОбъявлениеXML(); ЗаписьXML.ЗаписатьНачалоЭлемента("Product"); Для Каждого нмк Из хмл Цикл ЗаписьXML.ЗаписатьНачалоЭлемента("Product"); ЗаписьXML.ЗаписатьАтрибут("Price", нмк.Значение.Цена); ЗаписьXML.ЗаписатьАтрибут("Quantity", нмк.Значение.Количество); ЗаписьXML.ЗаписатьАтрибут("Name", нмк.Значение.Наименование); ЗаписьXML.ЗаписатьКонецЭлемента(); // Номенклатура КонецЦикла; ЗаписьXML.ЗаписатьКонецЭлемента(); // Номенклатура ЗаписьXML.Закрыть(); Возврат КаталогXML; КОнецФункции |
|||
9
hhhh
25.04.21
✎
08:28
|
(8) что-то фигня у вас тут. ПараметрыЗАписиХМЛ никак не привязано тут ни к чему, ни к какому файлу. Вы программист или где?
|
|||
10
bagu_muslim
25.04.21
✎
08:33
|
(9) Точняк, исправил код, сорян писал код ночью проглядел
следующий код ошибки 400 {"detail":"JSON parse error - Expecting value: line 1 column 1 (char 0)"} )) |
|||
11
Chameleon1980
25.04.21
✎
08:38
|
(10) в темноте и с выключенным компьютером
|
|||
12
hhhh
25.04.21
✎
08:42
|
(10) ну тут у вас действительно явно не JSON. Просто xml файл подсовываете.
|
|||
13
bagu_muslim
25.04.21
✎
08:43
|
(11) Да типа того )
|
|||
14
bagu_muslim
25.04.21
✎
08:44
|
(12) А как правильно отправить файл не подскажите??
|
|||
15
zmaximka
25.04.21
✎
11:13
|
Сервер от вас ждет JSON а вы в него XML тыкаете
|
|||
16
bagu_muslim
25.04.21
✎
11:20
|
(15) нужно в самом апи изменения сделать?
|
|||
17
hhhh
25.04.21
✎
11:32
|
(16) ну делайте не ЗаписьXML, а ЗаписьJSON
|
|||
18
Alex_
Alexsin_2020 03.05.21
✎
14:27
|
и потом
ЗаписьXML.ЗаписатьНачалоЭлемента("Product");//два уровня с одинаковым? может здесь лучше указать Products? Для Каждого нмк Из хмл Цикл ЗаписьXML.ЗаписатьНачалоЭлемента("Product"); ЗаписьXML.ЗаписатьАтрибут("Price", нмк.Значение.Цена); ЗаписьXML.ЗаписатьАтрибут("Quantity", нмк.Значение.Количество); ЗаписьXML.ЗаписатьАтрибут("Name", нмк.Значение.Наименование); ЗаписьXML.ЗаписатьКонецЭлемента();// Номенклатура КонецЦикла; ЗаписьXML.ЗаписатьКонецЭлемента();// Номенклатура |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |