Как проанализировать JSON из файла хранилища BLOB-объектов Azure в приложении логики? - PullRequest
0 голосов
/ 20 сентября 2019

У меня есть JSON-файл в хранилище BLOB-объектов Azure, который мне нужно проанализировать и вставить строки в SQL с помощью приложения логики.

Я использую «Получить содержимое BLOB-объектов», и моя первая попытка состояла в том, чтобы затем передатьв "Parse JSON".Возвращается и ошибка ": InvalidTemplate. Невозможно обработать выражения языка шаблонов во входных данных действия" Parse_JSON "в строке '1' и столбце '2856'"

Я обнаружил некоторые обсуждения, которые указали, что контент необходимо преобразоватьв строку, поэтому я использовал «Compose» и отредактировал код, предложенный для «input»: «@ base64ToString (body ('Get_blob_content'). $ content)»

Это работает, но тогда проблема InvalidTemplate выдвигаетсяв функцию Parse, и я получаю там ошибку InvalidTemplate.Я попытался обернуть вывод в выражение JSON и некоторые другие вещи, но я просто не могу заставить его анализировать.

Если я возьму образец или даже весь JSON и вставлю его во ВХОД анализаФункция работает без проблем, но не принимает содержимое BLOB-объекта как JSON.

Единственное, что я смог успешно сделать из содержимого BLOB-объектов, - это взять его как строку и обновить строку в SQL, чтобы позже использовать OPENJSON в SQL ... но я столкнулся с проблемой, которая заключается в том, чтодля другого поста.

Я в недоумении, что делать.

1 Ответ

0 голосов
/ 20 сентября 2019

Вы не публикуете много информации о действиях вашего логического приложения, поэтому, возможно, вы могли бы обратиться к моему дизайну потока.Я тестирую с данными json с массивом.

Ниже приведена моя потоковая картина.Я не использую действие compose и использую decodeBase64(body('Get_blob_content')['$content']) в качестве содержимого Parse Json.

enter image description here

И если выбрать свойство из json, вынужно установить индекс массива.Я установил переменную, чтобы получить значение 'body (' Parse_JSON ') 1 [' name ']'.

enter image description here

Вы можете попробовать это, если все равно не получается, предоставьте больше информации или образец, чтобы мы могли пройти тест.

...