|   |   | 
| 
 | Работа с API | ☑ | ||
|---|---|---|---|---|
| 0
    
        Kaban145 23.08.21✎ 20:39 | 
        Здравствуйте, написал запрос из 1С на сайт по api, сайт возвращает ответ в формате JSON.
 Вопрос: как из этого файла получить конкретную строку и заполнить значением этой строки поле на форме? | |||
| 1
    
        ДенисЧ 23.08.21✎ 20:42 | 
        Есть же в 1с встроенные функции чтения JSON.
 Ты их пробовал? | |||
| 2
    
        Kaban145 23.08.21✎ 20:44 | 
        Эмм, пробовал, я просто в этой теме второй день, поэтому если бы кто кинул пример, хоть небольшой, я думаю разобрался бы     | |||
| 3
    
        brainguard 23.08.21✎ 21:06 | 
        соединение=новый HTTPСоединение("api.nasa.gov",443,,,,,новый ЗащищенноеСоединениеOpenSSL());
 запрос=новый HTTPЗапрос("/planetary/apod?api_key=vHORPgFd5cBM1iXzRs6OAb0bFoYkNbcKjPnBo13x&count=50"); результатзапроса=соединение.Получить(запрос); стр=результатзапроса.ПолучитьТелоКакСтроку(); чт=новый ЧтениеJSON; чт.УстановитьСтроку(стр); рез=ПрочитатьJSON(чт); для каждого эл из рез цикл и т.д. | |||
| 4
    
        Kaban145 23.08.21✎ 21:23 | 
        Выдаёт в строке КлючИЗначение     | |||
| 5
    
        VladZ 23.08.21✎ 21:30 | 
        (4) Обращайся по ключу     | |||
| 6
    
        Kaban145 23.08.21✎ 21:40 | 
        Можно, пожалуйста, поподробнее я просто полный ноль в этом, сделаю эту хрень и больше никогда в это не полезу.)
 Простите меня заранее.) | |||
| 7
    
        Мимохожий Однако 23.08.21✎ 21:41 | 
        Бог простит. Не зарекайся.     | |||
| 8
    
        Базис naïve 23.08.21✎ 21:52 | 
        Зарекался Кабан в 1С не лезть :)
 Внутри цикла: Если СокрЛП(Нрег(ключ) = "что ты там хотел" Тогда Возврат "Вот оно! " + СокрЛП(Значение); КонецЕсли; После цикла Возврат("Я так и и знал. Ничего не работает. Надо идти на форум."); | |||
| 9
    
        Elf_80_lvl 23.08.21✎ 22:09 | 
        (6) В таких случаях нанимают программиста и платят ему за 2 часа работы очень небольшие деньги.     | |||
| 10
    
        DGorgoN 24.08.21✎ 08:10 | 
        (0) JSON обычный текстовый файл. Открой его блокнотом.     | |||
| 11
    
        Kaban145 25.08.21✎ 01:19 | 
        Написал вот такую конструкцию:
 Чтение=Новый ЧтениеJSON; Чтение.УстановитьСтроку(ОтветСервера); МассивДжи=ПрочитатьJSON(Чтение); Для каждого Элемент из МассивДжи Цикл Ключ=Элемент.Ключ; Значение=Элемент.Значение; Сообщить(Ключ+Значение); КонецЦикла; Выдаёт всего два ключа и вместо значений выдаёт Структура | |||
| 12
    
        Kaban145 25.08.21✎ 01:51 | 
        Немного разобрался, выдаёт ключи data и meta, они не содержат значений, а как можно перешагнуть их и прочитать ключи, которые содержат значения?     | |||
| 13
    
        DrZombi гуру 25.08.21✎ 06:10 | 
        (12) Вы какое образование имеете?
 Какой навык в программировании? Сколько языков знаете? ... Ответы на вопросы облегчат нам ответы вам. Народ уже вам ответил на ваш вопрос, но вы нечего не поняли. :) | |||
| 14
    
        Chameleon1980 25.08.21✎ 07:10 | 
        обычно из джейсона примитивного
 получается либо структура либо соответствие в них уже могут быть массивы почитайте синтакс-помощник по структура массив соответствие ну или примеры посмотрите | |||
| 15
    
        Salimbek 25.08.21✎ 08:44 | 
        (12) Вот так же и перебираешь:
 Для каждого Элемент2 из ... Если внутри будет еще структура или массив, то Для каждого Элемент3 из ... P.S. Если знаешь точно, что за имя у нужного тебе узла (например "key"), то можно проще Данные = МассивДжи["data"]["key"] | |||
| 16
    
        Kaban145 25.08.21✎ 10:55 | 
        Спасибо огромное Salimbek , всё получилось.)     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |