Azure函数SendGrid输出绑定不会在SendGrid中显示为消息

时间:2018-05-18 05:55:27

标签: azure azure-functions sendgrid

我正在尝试使用Azure Functions通过SendGrid发送电子邮件。我有一个具有存储队列触发器和SendGrid输出参数的函数。在队列中添加消息后,该函数运行但没有其他任何事情发生。当我登录Sendgrid时,它显示我没有请求和传递消息。我也没有收到任何电子邮件。

可能导致这种情况的原因是什么?有没有办法进一步调试?

这是我在C#中的功能代码:

public static class SendChatEmail {
    [FunctionName ("SendChatEmail")]
    public static void Run ([QueueTrigger ("decision-tree-emails", Connection = "AzureWebJobsStorage")] ChatData myQueueItem, [SendGrid (ApiKey = "SendGridApiKey")] out SendGridMessage message,
        TraceWriter log) {
        log.Info ($"C# Queue trigger function processed: {myQueueItem}");

        message = new SendGridMessage ();
        message.AddTo ("matti.petrelius@gmail.com");
        message.AddContent ("text/html", "Hello there!");
        message.SetFrom (new EmailAddress ("matti.petrelius@gmail.com"));
        message.SetSubject ("Chat conversation");
    }
}

我正在使用:

Azure Functions Core Tools (220.0.0-beta.0)
Function Runtime Version: 2.0.11651.0
Microsoft Visual Studio Enterprise 2017 Version 15.7.1
Azure Functions and Web Jobs Tools - 15.0.40502.0

我还尝试在Node.js中创建一个类似的函数,但没有让它更好地工作。也许我在某种程度上错误地使用SendGrid?

1 个答案:

答案 0 :(得分:0)

好的,没关系!事实证明,SendGrid中的仪表板刚刚更新很慢,并且在几个小时之后才显示请求。因此请求被发送和传递,仪表板只是没有显示它。此外,我没有注意到收到电子邮件,因为他们被直接发送到垃圾邮件!所以这是一个误报。 SendGrid绑定的工作方式很好。