LogicApps с другой схемой данных - PullRequest
0 голосов
/ 03 августа 2020

У меня есть следующий HTTP-пост со следующей полезной нагрузкой

{"externalCode": "999", "name": "PNNL - Winthrop, WA (Sundown L", "description": "Winthrop" , «geozoneFlx»: «PNL», «status»: «A», «address1»: «135 Sundown Lane», «city»: «WINTHROP», «state»: «WA», «county»: «OKANOGAN» , "страна": "США", "zipCode": "98862-0339", "часовой пояс": "PST", "startDate": "2016-01-27T00: 00: 00", "endDate": "9999- 12-31T00: 00: 00 "},

ОДНАКО, в приложение Logi c приходит какое-то сообщение с данными, которое выглядит вот так, без« названия состояния »в таких данных

«externalCode»: «999», «name»: «PNNL - Winthrop, WA (Sundown L», «description»: «Winthrop», «geozoneFlx»: «PNL», «status»: «A», «address1» «:« 135 Sundown Lane »,« city »:« WINTHROP »,« county »:« OKANOGAN »,« country »:« USA »,« zipCode »:« 98862-0339 »,« timezone »:« PST », "startDate": "2016-01-27T00: 00: 00", "endDate": "9999-12-31T00: 00: 00"},

Я должен сказать, если сообщение с данными приходит без Состояние json Имя как ab ове, выбрось это. Как мне отфильтровать отсутствующее поле json, такое как «Состояние» в приведенном выше ??

Спасибо

Майк

1 Ответ

0 голосов
/ 03 августа 2020

Я думаю, вы можете судить, больше ли длина значения поля state 0, если оно больше 0, выполните ваши исходные logi c, если длина значения 0, вы не нужно ничего делать. Дизайн приложения logi c выглядит следующим образом:

enter image description here

If the request body of your http request is a json array, you can use the for each loop to process.

The expression for obtaining the length of the state field in condition is as follows:

length(coalesce(body('Parse_JSON')?['state'], ''))

For the usage of coalesce и length , вы можете обратиться к официальной документации

...