从 LogicApp 中的 json 获取值

Get value from json in LogicApp

完全改写问题,因为第一次尝试不清楚。

在我的逻辑应用程序中,我正在从 blob 中读取一个 .json,其中包含:

{
    "alpha": {
        "url": "https://linktoalpha.com",
        "meta": "This logic app does job aaaa"
    },
    "beta": {
        "url": "https://linktobeta.com",
        "meta": "This logic app does job beta"
    },
    "theta": {
        "url": "https://linktotheta.com",
        "meta": "This logic app does job theta"
    }
}

我正在使用正文中包含的 http post 触发逻辑应用程序:

{ "logicappname": "beta" }

但 'logicappname' 的值可能是 alpha、beta 或 theta。我现在需要设置一个变量,其中包含 'beta' 的 url 值。如果没有 jsonpath 支持,这怎么能实现?

我已经在 json 解析 blob 中的文件内容,这给了我令牌...但我看不到如何 select 我需要的值。非常感谢任何帮助,谢谢。

不确定我是否理解你的问题。但我相信您可以在 http 触发器之后使用 Pars Json 操作。 有了它,您将可以控制传入的 JSON 消息,并且可以在后续操作中选择 'URL' 值作为动态内容。 如果我对您的问题的理解有误,请告诉我。

根据您的要求,我想只需使用 "Parse JSON" 操作即可。请参考以下步骤:

1. 我将文件 testJson.json 上传到我的 blob 存储,然后获取它并在我的逻辑应用程序中解析它。

2. 我们可以看到下面的截图中有3个url。因为要得到betaurl值,所以是第二个,所以我们可以选择第二个。

如果要从 "When a HTTP request is received" 触发器中通过参数 logicappname 获取 url 值,可以在创建 result 变量时使用表达式。

在我的截图中,表达式是:

body('Parse_JSON')?[triggerBody()?['logicappname']]?['url']

由于你的问题描述的有点不清楚,我对I am already json parsing the file contents from the blob and this IS giving me the tokens的意思也很困惑,为什么"tokens"会参与其中呢?在最初的问题中,你似乎想通过 jsonpath 来完成,但在最新的描述中你说 without jsonpath ?所以如果我误解了你的问题,请告诉我。谢谢。