【发布时间】:2020-07-28 01:26:47
【问题描述】:
我的 API 需要处理文件上传以及电子邮件中的附件。电子邮件通过 Sendgrid 的邮件解析功能路由到我的 API。
这两种方法都会生成多部分表单。在电子邮件的情况下,字段是“to”、“from”等。在普通的上传表单中,我决定字段。
我不想处理本地临时文件,所以理想情况下我只需将文件流通过管道传输到 S3。我已经实现了这个并且效果很好。但也有边缘情况..
在将文件传输到 S3 之前,我想确保电子邮件是合法的。我通过检查 from 和 to 地址来做到这一点。不幸的是,多部分表单没有指定字段/文件的特定顺序,而是规范说要保留原始表单的顺序。
问题
有时我会收到来自 Sendgrid 解析的电子邮件,这些邮件是在文件之后字段到达的地方。
因此,为了通过表单字段验证发件人,我可能需要在等待字段数据时缓冲文件。这似乎是一种处理传入文件的非常愚蠢的方式,即在我知道是否应该处理文件之前就开始处理/存储文件。
发送到指定子域的所有电子邮件都将从 Sendgrid 转发到我的服务器。这意味着我可能会收到大量电子邮件,我必须完全处理(包括缓冲文件)才能确定电子邮件是否合法。
问题
我是不是误会了什么?
一些电子邮件客户端推迟下载附件。这是怎么做到的?
我正在使用的工具
node.js
多方
Sendgrid 解析
【问题讨论】:
标签: javascript sendgrid multipart multiparty