问题标签 [mime-mail]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1174 浏览

encoding - MIME 电子邮件主题等标头与 utf8:首先拆分,然后编码?

让我们以这个主题行为例,

它(连同“主题:”等)在编码时超出了限制。所以,一些邮寄者(某电力公司的)首先对其进行编码,然后将其拆分:

(但这可能很容易“破坏”一个 UTF-8 多字节字符。)

其他邮件程序(例如 Gnus)首先将其拆分,然后对其进行编码:

后者保证在今天的所有邮件阅读器中都能正确呈现。

我的问题是,某些邮件阅读器(例如,Gmail android 应用程序)被前者阻塞,谁的错?

邮件阅读器是否应该总是先将两个字符串粘贴在一起,然后再解码?(所以 Gmail 应用程序是错误的。)

还是先解码,然后将两个解码的字符串粘贴在一起也可以。(所以邮件程序是错的?)

(我认为 Quoted Printable 也会出现同样的问题,不仅仅是 Base64。)

损坏的 UTF-8

事实上,如果你仔细想想,Saying=?utf-8?B?...?=意味着...东西应该是一个有效的 UTF-8 字符串,(就其本身而言)对吧?所以邮件程序是错误的!

同样,可能从来没有定义过如何拆分=?utf-8?B?...?=成两个短语的语法,因为这应该事先处理好,因为创建=?utf-8?B?...?=字符串应该始终是最后一步。

所以:Mailer 软件:有罪。Gmail:无罪。

2021/09/01:这里我分析一下Subject的第一行

0 投票
1 回答
1388 浏览

python - 当我尝试安装 easy_install 电子邮件时,如何解决没有名为“email.MIMEMultipart”的模块?

这是我从来源复制并尝试学习的简单电子邮件发送代码。但即使我安装了 easy_install 电子邮件,这也会出错。下面是代码:

0 投票
0 回答
27 浏览

php - Debian/Stable (Buster) 系统上的 php (php-mime-mail) 设置

我在我的本地服务器上运行 Buster,除其他外,我使用它来开发网站,然后将它们复制到公共主机上。我最近开始学习一点 php 编码,因为似乎有很多示例代码可以用于我想做的事情。通常,当我在安装 libapache2-mod-php 后尝试运行它们时,它们会立即工作。

现在我正试图让一个实际上相当小而且看起来很简单的脚本工作。它显示一个表单,允许您发送带有附件的电子邮件。我实际上有一些类似的脚本在本地工作,它们做的事情几乎相同,但我正试图让这个工作,因为我用于需要这种类型表单的一个站点的主机破坏了我一直在使用的脚本(我也不喜欢它,因为它看起来过于复杂且功能不足)。

该脚本使用 Pear 库来处理繁重的工作,这似乎是一个合理的设计决策。我安装了 php-pear 包和 php-mail-mime。不幸的是,该脚本无法运行。它正在上传文件,但无法发送电子邮件。

我能够找到失败的线路,但这让我感到困惑。这条线是

这应该可以工作(它所做的只是创建一个新对象)。我运行了(经常推荐的)php-info 页面(<?php phpinfo();),它显示了很多信息,但没有任何关于 mime 的信息。我希望这是 php 处理的东西。

我通过删除所有 mime 部分并仅使用 php mail() 函数获得了发送电子邮件的脚本。然而,这并不是真的有用。我需要 mime 位来添加附件。

无论如何,看起来我需要做更多的事情(除了重新启动 Apache2)才能让 php 使用 php-mail-mime 库,但我不确定是什么。我找到的所有 Debian 信息都只是说“安装包 php-<whatever> 并且它会工作”。有人能帮我一下吗?

0 投票
1 回答
85 浏览

python - python3 msg.attach(MIMEImage(file(attachment).read())) 中的问题

我有一个用 python 2.7 编写的程序,它发送附在电子邮件中的照片。到目前为止,我还没有遇到任何问题,但是因为我在程序中使用了它和其他东西,所以我必须将它升级到 python 3,我遇到了以下问题:

错误信息:

0 投票
0 回答
81 浏览

python - Python Email MIMEMultipart 创建嵌套附件

参考:如何使用 Python 发送带有 .csv 附件的电子邮件

我正在尝试将 csv 文件附加到电子邮件中,但我收到了带有另一个 .msg 文件附件的电子邮件,并且 csv 附加在此 .msg 文件中。我按照上面参考中的示例进行操作。我是否缺少任何其他步骤?

0 投票
1 回答
37 浏览

c# - .NetCore 使用证书签署电子邮件

首先,我尝试了 FluentEmail,但那个似乎被我的 .NetCore 版本破坏了。

我正在创建这样的电子邮件:

问题是,我找不到任何实际执行签名的示例。我能找到的最好的方法是签名和加密,但电子邮件不得加密。那一个真的很重要。

现在有没有人如何签署电子邮件(包括发件人、主题、正文等)。任何帮助将不胜感激。

我可能应该补充一点,证书将位于某个文件路径,并且程序将部署在 Linux Docker 容器上。所以代码不能只在 Windows 上工作。

对不起,我应该把显而易见的东西锁住。这是我第一次尝试通过代码发送电子邮件。

更新 0: 请注意非常确定这是否有效,因为WindowsSecureMimeContext(..). (我知道我只在下面的代码中签署了正文)。

更新1: 我认为这应该工作:

0 投票
0 回答
41 浏览

php - 使用 PHP 转发带附件的 MIME 消息

我创建了一个小的 PHP 脚本,目的是转发 MIME 消息并添加一些文本。

使用下面的代码,它会成功发送带有添加文本的消息。我遇到的问题是消息被发送了两次,并且转发的消息在两条消息中都显示为附件(每个消息部分一个附件)。添加的文本确实显示在两条消息的消息本身中。我在想这意味着我的标题在某处有问题。

这是我的完整代码

功能 forwardmail($mailConnection, $messageIndex, $subject, $recipient, $newMessage, $fromAddr) {

我使用 WinMerge 比较了两个文件转储,以确保我没有更改现有消息中的任何内容。我还使用记事本++ 来查找控制字符等。我所有的行尾都有完整的 CR LF。每个标题部分后都有空行。

我确定我在这里遗漏了细微差别。有人介意指出我正确的方向吗?

肖恩

0 投票
0 回答
11 浏览

python - 如何不解压附加到 .msg 的 .msg

我使用 extract_msg-library 打开 msg,对其进行更改,然后将其发送回去,这对所有附件都很重要。

所以我打开所有附件保存它们将它们添加到 MIME 基础部分并附加这些部分。现在,如果我提取的 .msg 有一个 .msg 作为附件,它也会提取该附件。我不要那个。我只想按原样发送 .msg。我该怎么做呢?

0 投票
2 回答
53 浏览

python - 使用python从文件发送HTMLbody

我可以发送纯文本,但无法发送 html 格式的 html 文本。

这将发送附件,但我想在电子邮件正文中查看 html 文本。文件名是内容 html 表,因此代码应发送 html 文本,该文本将自动在带有 html 表的 html 正文中可用。

0 投票
0 回答
11 浏览

python - 尝试在电子邮件中附加附件并为“附加”收到错误“AttributeError”

我试图使用 smtp 将 png 文件附加到电子邮件中,但由于某种原因,我得到一个“AttributeError - 'str' 对象没有属性 'attach'”

我浏览了几个指南和方法,但我无法阅读此错误