0

我知道您可以通过在 url 中嵌入其直接路径来将本地文件附加到电子邮件中。有没有办法对在浏览器中创建为 blob 的文件做类似的事情?这是作为我正在运行的一些 javascript 代码的一部分创建的。

谢谢!

4

1 回答 1

3

我假设您正在使用XMLHttpRequest提交数据。您可以创建一个将其发布到服务器的FormData,而不是简单地发布电子邮件正文

假设您有一个要上传的文件,名为myBlob,以及其他一些与电子邮件相关的字符串,您可以这样做

var data = new FormData();
//           name       , value     [,  filename       ]
data.append('attachment', myBlob     , 'myFileName.txt');
data.append('to'        , emailText                    );
data.append('subject'   , subjectText                  );
data.append('body'      , bodyText                     );

然后在您发送的XMLHttpRequest的最后一步(比如调用xhrdata

xhr.send(data);

$_POST现在,您可以像往常一样使用(例如在 php 中)在服务器端代码中访问这些内容。

网络浏览器支持IE10+

于 2013-10-12T14:24:44.590 回答