首页 > 解决方案 > 通过 httpRequest 触发后使用 Azure 逻辑应用发送电子邮件

问题描述

我有一个包含两个操作的天蓝色逻辑应用程序。

  1. 收到 httpRequest 时。
  2. 发送电子邮件 (v2)

当由 httpRequest 触发时,我正在尝试发送一封内容为“任务”的电子邮件。

HttpRequest 正文 json 架构:

"properties": {
    "due": {
        "type": "string"
    },
    "email": {
        "type": "string"
    },
    "task": {
        "type": "string"
    }
},
"type": "object"

}

我已经从电子邮件正文的动态内容中添加了“任务”对象。我希望电子邮件的正文包含在 httpRequest 中发送的“任务”的内容。

下面是我如何发送带有所需 json 数据的 httpRequest。但是,电子邮件始终是空的,没有正文。我一定做错了什么。任何指针将不胜感激。

await client.PostAsync(
               
            logicAppUrl, new StringContent(jsonData, Encoding.UTF8, "application/json"));

json数据内容:

{"email":"test@gmail.com","due":"4/1/2020","task":"content1-------------"}

标签: c#azureazure-web-app-service

解决方案


您可以使用 Postman 调试您的 json 应该是什么样子。您似乎 1) 要么忘记在字符串中包含大括号,要么 2) 忘记在字符串中转义双引号。它应该看起来像

string jsondata = "{ \"email\": \"test@gmail.com\", \"due\": \"4/1/2020\", \"task\": \"content1-------------\"}"

编辑:如果 json 不匹配,请转到逻辑应用的 HTTP 任务,单击Use sample payload to generate schema并将您的 json 复制到其中。在你的情况下,它应该是

{
    "type": "object",
    "properties": {
        "email": {
            "type": "string"
        },
        "due": {
            "type": "string"
        },
        "task": {
            "type": "string"
        }
    }
}

推荐阅读