Отправка json методом POST и с параметром data

1. rav1107 13.04.19 07:47 Сейчас в теме
Добрый день всем, Помогите пожалуйста как отправить JSON с параметром data? Я отправляю данные на сайт в JSON с 1с разработчик просит отправить JSON с параметром data я вот не понимаю как так отправить. Разработчик дал мне пример в каком виде должен быть JSON

ВОТ:
dat a:{
test1:"test1",
test2:"test2"
}

А у меня формируется вот такой код JSON

{"data":
[{
"firs_name":"Ма",
"last_name":"Ра"
}]
}
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. independ 1520 13.04.19 08:05 Сейчас в теме
(1) это обычный текст, можно сформировать строку без применения json
+
4. rav1107 13.04.19 08:07 Сейчас в теме
5. independ 1520 13.04.19 08:14 Сейчас в теме
(4)
Текст="ВОТ: dat a:{" 
Для каждого меед из мПолучитьЗаказ.МедицинскиеУслуги цикл
             Если меед.МедицинскоеРабочееМесто.ВыгрузкаВЛис = Истина тогда
                 Текст=Текст+"first_name:"""+ВыборкаДетальныеЗаписи.Фамилия+""",";  
 Текст=Текст+"last_name:"""+ВыборкаДетальныеЗаписи.Имя+"""}";  
              КонецЕсли; 
         КонецЦикла;
+
6. rav1107 13.04.19 08:16 Сейчас в теме
(5) а в JSON не нужно преобразовать дальше?
+
7. independ 1520 13.04.19 08:17 Сейчас в теме
8. rav1107 13.04.19 08:30 Сейчас в теме
(7) как то не понятно получается у меня
+
2. rav1107 13.04.19 07:52 Сейчас в теме
Это код отправки на сайт, и правильно ли я отправляю?? это POST запрос?? я просто новичок))


мПолучитьЗаказ = Заказ.ПолучитьОбъект();
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	ДанныеПациентов.Фамилия,
		|	ДанныеПациентов.Имя,
		|	ДанныеПациентов.Отчество
		|ИЗ
		|	РегистрСведений.ДанныеПациентов КАК ДанныеПациентов
		|ГДЕ
		|	ДанныеПациентов.Пациент = &Пациент";
	
	Запрос.УстановитьПараметр("Пациент", мПолучитьЗаказ.Пациент);
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	 //Создали ЗапистJSON
	ЗаписьJSON = Новый ЗаписьJSON;
	тПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет," ",Истина);
	ЗаписьJSON.УстановитьСтроку(тПараметрыJSON);
	
	МассивДанныхJSON = Новый Массив;
	СтрукдураДанныхJSON = Новый Структура;
	
	 //Выбираем данные из запроса и записываем в массив "МассивДанныхJSON"       
	 Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		 Для каждого меед из мПолучитьЗаказ.МедицинскиеУслуги цикл
			 Если меед.МедицинскоеРабочееМесто.ВыгрузкаВЛис = Истина тогда	 
				 зДанные = Новый Структура;
				 зДанные.Вставить("firs_name", ВыборкаДетальныеЗаписи.Фамилия);
				 зДанные.Вставить("last_name", ВыборкаДетальныеЗаписи.Имя);
				 
				 //Добавляем структуру с информацией о Заказе в наш массив "МассивДанныхJSON" 
				 МассивДанныхJSON.Добавить(зДанные);
			 КонецЕсли; 
		 КонецЦикла;
	 КонецЦикла;    
	// вставляем наш массив в еще одну структуру
	СтрукдураДанныхJSON.Вставить("data",МассивДанныхJSON);
	ЗаписатьJSON(ЗаписьJSON, СтрукдураДанныхJSON);
	
	//Здесь нам платформа переделала нашу сложную структуру в строку данных в формате JSON 
	СтрокаJS = ЗаписьJSON.Закрыть();
	ФайлОтвета = КаталогВременныхФайлов()+ "\answer.txt";
	Ответ = СтрокаJS;
	
	//здесь надо указать путь к сайту
	HTTPСоединение = Новый HTTPСоединение("Адрес сайта");
	//создаем запрос данных методом POST
	запросPOST = Новый HTTPЗапрос("/ap/dat");
	
	//это обязательный заголовок тела запроса
	запросPOST.Заголовки.Вставить("Content-type", "application/x-www-form-urlencoded");
	
	//Здесь задаем текст нашей отформатированной строки + задаем формат сроки
	запросPOST.УстановитьТелоИзСтроки("mData="+СтрокаJS,"windows-1251",ИспользованиеByteOrderMark.НеИспользовать);
	
	Попытка
	//Отправляем для обрааботки на наш сервер
		Результат = HTTPСоединение.ОтправитьДляОбработки(запросPOST,ФайлОтвета);
		КодОтвета = Результат.КодСостояния;
	Исключение
		#Если клиент Тогда
           Сообщить(ОписаниеОшибки());
	   #КонецЕсли
	КонецПопытки;

Показать
+
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот