如何使用 strongGrid 入站 webhook 解析附件值
How to parse attachment values with strongGrid inbound webhook
你好,我已经在 net core 3.1 中使用 strongGrid 成功设置了入站 webhook。
端点被调用,我想解析 csv 文件附件中的值。
我使用的代码如下
var parser = new WebhookParser();
var inboundEmail = await parser.ParseInboundEmailWebhookAsync(Request.Body).ConfigureAwait(false);
await _emailSender.SendEmailAsyncWithSendGrid("info@mydomain.com", "ParseWebhook1", inboundEmail.Attachments.First().Data.ToString());
请注意,我正在发送电子邮件,因为我不知道如何使用 sendgrid 调试 webhook,因为我不知道任何 cli。
但这条线显然不是我要找的
inboundEmail.Attachments.First().Data.ToString()
我在我的电子邮件中收到了这个
Id = a3e6a543-2aee-4ffe-a36a-a53k95921998, Tag = HttpMultipartParser.MultipartFormDataParser.ParseStreamAsync, Length = 530 bytes
我需要解析的 csv 有 3 个字段 Sku 产品名称和数量我想获得 sku 值。
如有任何帮助,我们将不胜感激。
.Data
属性 包含流,并且在流对象上调用 ToString
不会 return 其内容。在 C# 中读取流内容的正确方法是这样的:
var streamReader = new StreamReader(inboundEmail.Attachments.First().Data);
var attachmentContent = await streamReader.ReadToEndAsync().ConfigureAwait(false);
就解析 CSV 而言,GitHub and hundreds on NuGet 上确实有数千个关键字 'CSV' 的项目。我相信其中之一会满足您的需求。
你好,我已经在 net core 3.1 中使用 strongGrid 成功设置了入站 webhook。 端点被调用,我想解析 csv 文件附件中的值。
我使用的代码如下
var parser = new WebhookParser();
var inboundEmail = await parser.ParseInboundEmailWebhookAsync(Request.Body).ConfigureAwait(false);
await _emailSender.SendEmailAsyncWithSendGrid("info@mydomain.com", "ParseWebhook1", inboundEmail.Attachments.First().Data.ToString());
请注意,我正在发送电子邮件,因为我不知道如何使用 sendgrid 调试 webhook,因为我不知道任何 cli。
但这条线显然不是我要找的
inboundEmail.Attachments.First().Data.ToString()
我在我的电子邮件中收到了这个
Id = a3e6a543-2aee-4ffe-a36a-a53k95921998, Tag = HttpMultipartParser.MultipartFormDataParser.ParseStreamAsync, Length = 530 bytes
我需要解析的 csv 有 3 个字段 Sku 产品名称和数量我想获得 sku 值。
如有任何帮助,我们将不胜感激。
.Data
属性 包含流,并且在流对象上调用 ToString
不会 return 其内容。在 C# 中读取流内容的正确方法是这样的:
var streamReader = new StreamReader(inboundEmail.Attachments.First().Data);
var attachmentContent = await streamReader.ReadToEndAsync().ConfigureAwait(false);
就解析 CSV 而言,GitHub and hundreds on NuGet 上确实有数千个关键字 'CSV' 的项目。我相信其中之一会满足您的需求。