Конечно, это зависит от того, что вы еще делаете.
Базовый пример:
- Анализ JSON, который вы предоставили, из тела HTTP-запроса.
- Создана переменная «Выходные данные» для хранения обновленного объекта.
- Запустили его через элемент управления Switch, чтобы посмотреть значение свойства языка.
- Если значение было «EN», я использовал функцию
setProperty
внутри действия Set Variable, чтобы установить переменную «Выходные данные». Вы можете добавить совпадения для других стран и по умолчанию установить переменную в исходное значение JSON - . В качестве ответа на запрос была возвращена переменная «Выходные данные».
Вот схема JSONдля приложения. Я использовал и переменную ввода данных, а также вывод, но вы должны быть в состоянии сделать это только с выходной переменной.
{
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"triggers": {
"manual": {
"type": "Request",
"kind": "Http",
"inputs": {
"schema": {
"properties": {
"customer": {
"type": "string"
},
"email": {
"type": "string"
},
"firstname": {
"type": "string"
},
"language": {
"type": "string"
},
"lastname": {
"type": "string"
}
},
"type": "object"
}
}
}
},
"actions": {
"Input_Data": {
"runAfter": {},
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "Data",
"type": "Object",
"value": "@triggerBody()"
}
]
}
},
"Output_Data": {
"runAfter": {
"Input_Data": [
"Succeeded"
]
},
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "Output Data",
"type": "Object"
}
]
}
},
"Parse_JSON": {
"runAfter": {
"Output_Data": [
"Succeeded"
]
},
"type": "ParseJson",
"inputs": {
"content": "@variables('Data')",
"schema": {
"customer": "ABCD",
"email": "XYZ",
"firstname": "Bob",
"language": "EN",
"lastname": "Doe"
}
}
},
"Response": {
"runAfter": {
"Switch": [
"Succeeded"
]
},
"type": "Response",
"kind": "Http",
"inputs": {
"body": "@variables('Output Data')",
"statusCode": 200
}
},
"Switch": {
"runAfter": {
"Parse_JSON": [
"Succeeded"
]
},
"cases": {
"Case": {
"case": "EN",
"actions": {
"Set_variable": {
"runAfter": {},
"type": "SetVariable",
"inputs": {
"name": "Output Data",
"value": "@setProperty(variables('Data'), 'language', 'English')"
}
}
}
}
},
"default": {
"actions": {
"Set_variable_2": {
"runAfter": {},
"type": "SetVariable",
"inputs": {
"name": "Output Data",
"value": "@variables('Data')"
}
}
}
},
"expression": "@body('Parse_JSON')['language']",
"type": "Switch"
}
},
"outputs": {}
}