|   |   | 
| 
 | Простейший GET запрос с параметрами | ☑ | ||
|---|---|---|---|---|
| 0
    
        FFrr1C 19.06.24✎ 14:33 | 
        Есть простейшая api, нужно ответ по следующей строке https://api.jde.ru/vD/calculator/price?from=1125899906842658&to=1125899906842673&weight=12&width=1&volume=1&type=1
 из описания: метод GET /calculator/price параметры: from,to,weight,width,volume,type можно ли как то передавать параметры в этих объектах для наглядного формирования строки Соединение = Новый HTTPСоединение(АдресСервера,,,,,,Новый ЗащищенноеСоединениеOpenSSL()); Запрос = Новый HTTPЗапрос(СтраницаСервера); Попытка Результат = Соединение.Получить(Запрос); | |||
| 1
    
        Мультук гуру 19.06.24✎ 14:36 | ||||
| 2
    
        FFrr1C 19.06.24✎ 14:36 | 
        понятно, что можно напарсить строку, и через ПолучитьФайлИзИнтернета() получить результат, но интересует, можно ли как-то на объектном уровне это прписать?     | |||
| 3
    
        spiller26 19.06.24✎ 14:53 | 
        (0) так параметры вот они
 from=1125899906842658&to=1125899906842673&weight=12&width=1&volume=1&type=1 Вы не можете понять как их прописывать в коде? | |||
| 4
    
        FFrr1C 19.06.24✎ 14:55 | 
        Да, именнно! как на уровне 1С прописать их, в объекте?, через структуру или еще чего..     | |||
| 5
    
        FFrr1C 19.06.24✎ 14:56 | 
        зачем то эти объекты придуманы 
 Соединение = Новый HTTPСоединение(АдресСервера,,,,,,Новый ЗащищенноеСоединениеOpenSSL()); Запрос = Новый HTTPЗапрос(СтраницаСервера); в них как то можно структуру параметров передавать? | |||
| 6
    
        spiller26 19.06.24✎ 14:57 | 
        АдресСервера = "api.jde.ru"
 Соединение = Новый HTTPСоединение(АдресСервера,,,,,,Новый ЗащищенноеСоединениеOpenSSL()); Запрос = Новый HTTPЗапрос("/vD/calculator/price?from=1125899906842658&to=1125899906842673&weight=12&width=1&volume=1&type=1"); | |||
| 7
    
        FFrr1C 19.06.24✎ 14:57 | 
        просто наколотить строку from=1125899906842658&to=1125899906842673&weight=12&width=1&volume=1&type=1 парсингом, можно, но именно и интересует для этого есть какие-то методы в 1С     | |||
| 8
    
        FFrr1C 19.06.24✎ 14:59 | 
        ТИпа.. новый Структура("From,to","1125899906842658,1125899906842673")     | |||
| 9
    
        arsik гуру 19.06.24✎ 15:02 | 
        Накуя? Ну напиши себе метод из структуры в строку если так хочется     | |||
| 10
    
        Garikk 19.06.24✎ 15:03 | 
        а УстановитьТелоИзСтроки не подставит в правильное место эти параметры? 
 (9) чтобы велосипеды с построением запроса не строить, логично же | |||
| 11
    
        spiller26 19.06.24✎ 17:15 | 
        Если хочешь структуру, то воспользуйся "КоннекторHTTP"
 ПараметрыСтруктура= Новый Структура;
ПараметрыСтруктура.Вставить("from", "1125899906842658");
ПараметрыСтруктура.Вставить("to", "1125899906842673");
ПараметрыСтруктура.Вставить("weight", "12");
ПараметрыСтруктура.Вставить("width", "8");
ПараметрыСтруктура.Вставить("volume", "1");
ПараметрыСтруктура.Вставить("type", "1");
Результат = КоннекторHTTP.GetJson("https://api.jde.ru/vD/calculator/price",ПараметрыСтруктура); | |||
| 12
    
        arsik гуру 19.06.24✎ 15:05 | 
        (10) GET не предполагает тела. Хотя сейчас есть извращенцы которые тело к GET прикручивают.     | |||
| 13
    
        FFrr1C 19.06.24✎ 15:05 | 
        (9) ну мы же, не пишем в строку JSON,XML, на объект дали, а тут получается не дали? я об этом спрашиваю..     | |||
| 14
    
        FFrr1C 19.06.24✎ 17:15 | 
        (11)
 Если хочешь структуру, то воспользуйся "КоннекторHTTP"
 ПараметрыСтруктура= Новый Структура;
ПараметрыСтруктура.Вставить("from", "1125899906842658");
ПараметрыСтруктура.Вставить("to", "1125899906842673");
ПараметрыСтруктура.Вставить("weight", "12");
ПараметрыСтруктура.Вставить("width", "8");
ПараметрыСтруктура.Вставить("volume", "1");
ПараметрыСтруктура.Вставить("type", "1");
Результат = КоннекторHTTP.GetJson("https://api.jde.ru/vD/calculator/price", ПараметрыСтруктура);вот прям в точку, а что это за коннекторHTTP, костыль? | |||
| 15
    
        arsik гуру 19.06.24✎ 15:08 | 
        (14) Фраемворк     | |||
| 16
    
        Garikk 19.06.24✎ 15:09 | 
        (12) само собой не предполагает, тут вопрос не о стандарте http, а о том как 1С обрабатывает запрос... платформа может заполненное тело оттранслировать в url
 в postman нечто подобное происходит если тело не в raw заполнять | |||
| 17
    
        spiller26 19.06.24✎ 15:08 | 
        (14) https://infostart.ru/1c/articles/709325/
 и в (1) давали примерно тоже самое. | |||
| 18
    
        ptiz 19.06.24✎ 15:22 | 
        (0) Пример из типовой УТ 11:
 ПараметрыЗапроса = Новый Массив; // Номер страницы (отсчёт с 0) ПараметрыЗапроса.Добавить(СтрШаблон("page=%1", 0)); // Количество записей на странице ПараметрыЗапроса.Добавить(СтрШаблон("size=%1", ИдентификаторыЗаданий.Количество())); Если ЗначениеЗаполнено(ВидПродукции) Тогда // Кодовое значение товарной группы ПараметрыЗапроса.Добавить( СтрШаблон( "pg=%1", ИнтерфейсИСМПСлужебный.ТоварнаяГруппаЧислом(ВидПродукции))); КонецЕсли; // Список ID задач ПараметрыЗапроса.Добавить( СтрШаблон( "task_ids=%1", СтрСоединить(ИдентификаторыЗаданий, ","))); URLЗапроса = СтрШаблон( "api/v3/true-api/dispenser/results%1", ИнтерфейсИСМП.ПараметрыЗапроса(ПараметрыЗапроса)); РезультатЗапроса = ИнтеграцияИСМП.ПолучитьДанныеИзСервиса(URLЗапроса, КлючСессии, ИнтерфейсМОТПКлиентСервер.ПараметрыОтправкиHTTPЗапросов("")); Функция ПараметрыЗапроса(ПараметрыЗапроса = Неопределено) Экспорт Если ПараметрыЗапроса <> Неопределено И ПараметрыЗапроса.Количество() > 0 Тогда Возврат "?" + СтрСоединить(ПараметрыЗапроса, "&"); КонецЕсли; Возврат ""; КонецФункции | |||
| 19
    
        ttk 19.06.24✎ 15:41 | 
        Функция ДополнитьАдрес(Адрес, Параметры)
 адресВрем = ""; Для Каждого парам Из Параметры Цикл адресВрем = АдресВрем + ?(адресВрем="","?","&") + парам.Имя + "=" + парам.Значение; КонецЦикла; Возврат Адрес + адресВрем; КонецФункции | |||
| 20
    
        oleg_km 19.06.24✎ 15:59 | 
        Еще вроде спецсимволы замаскировать     | |||
| 21
    
        Naruto66 20.06.24✎ 08:46 | 
        https://infostart.ru/1c/articles/709325/ по этому туториалу делала, у меня получилось     | |||
| 22
    
        Ненавижу 1С гуру 20.06.24✎ 08:49 | 
        (12) стандарт и не запрещает с другой стороны     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |