问题标签 [rfc822]

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 回答
9052 浏览

c# - 在 .NET 中序列化 MailMessage 对象的优雅方式

我目前正在研究在 C# 中序列化 MailMessage 对象,虽然网络上有几个示例的变体,但它们序列化为二进制,这与 IMO 的要点无关。

我的方法是我想将 MailMessage 序列化为 RFC2822 eml 字符串,下面的代码就是我想出的。

这很讨厌,但它确实有效。不过,理想情况下,我会创建一个新的 SMTPClient 并添加一个 Serialize 函数,该函数会自动返回 rfc822 字符串,而不会影响文件系统。

由于我似乎无法使用 Visual Studio 追踪到 SMTPClient.Send 函数,因此这种“理想”的做事方式有点棘手。

我已经通过对 Peter Huber 的 POP3MimeClient 和 POP3MailClient 类添加一些小的更改来整理 RFC 消息的反序列化,以便我可以将 HDD 上的文件或字符串反序列化回 MailMessage。

困扰我的是,我真的应该能够使用流序列化 MailMessaage 并将流写入我选择的字符串或文件,而不是像上面的代码那样四处走动以创建基于 GUID 的文件夹并将文件的内容读回字符串...

任何关于我如何使它更优雅的指针都将不胜感激。

谢谢。

0 投票
1 回答
456 浏览

rfc822 - 可以制作使用 LF 而不是 CRLF 的 RFC822 消息吗?

RFC822/RFC2822 标准规定“标头字段是由字段名称、后跟冒号 (':')、后跟字段正文并以 CRLF 终止的行组成的行” 。

但是我看到至少有一个 RFC822 MIME 解析器在继续解析之前将使用 LF ("\n") 的有效负载自动规范化为 CRLF ("\r\n")。

使用 RFC822 格式来序列化可能已经在某些地方手工编辑的数据以使用 LF 而不是 CRLF 有多安全?将这些数据发送到不同的程序并期望它们能够使用各种 RFC822 解析器库解析它是否安全?

0 投票
2 回答
4495 浏览

php - RSS 提要警告 PHP 的 DATE_RFC822 年表示不是四位数长

我正在使用 PHP 创建一个 RSS 提要,并使用 PHP 的构建DATE_RFC822格式设置日期:

结果是:

当我现在尝试验证它时,它通过了,但有以下建议:

有问题的 RFC 822 日期时间值:2013 年 10 月 1 日星期二 10:10:00 +0200

在此页面上有一些进一步的信息:有问题的 RFC 822 日期时间值

指定的值必须符合 RFC822 定义的日期和时间规范,但年份应表示为四位数字。

如何将年份更新为四位数?

0 投票
0 回答
87 浏览

email-headers - 目标地址要求从 RFC 822 更改为 RFC 2822 背后的原因

在 RFC 822 中,要求目标地址出现在标题中,第 C.3.4 节。读取“一条消息必须包含至少一个目标地址字段。'To' 和 'CC' 必须包含至少一个地址。” 在 RFC 2822 和 5322 中,第 3.6 节。在两者中,他们都写道:“唯一需要的标题字段是发起日期字段和发起人地址字段。”

我对这种变化背后的原因很感兴趣。我知道 IETF 有邮件列表档案和会议纪要,但是如果邮件列表中记录了这些,我很难在档案中找到它。

0 投票
2 回答
1008 浏览

python - 如何停止 HTTP(和 rfc822、电子邮件)标头注入?

(我问这个问题(并回答它),以提供一些(希望有用的)信息,因为我无法使用搜索引擎轻易找到这个问题。但是,请随时回答它并添加有用的信息:-)。)

如何在 Python 中转义/引用 HTTP 标头?

和/或如何验证它们以确保它们不包含任何上下文转义值?

换句话说,我们如何处理 HTTP 标头, 以及处理 HTML 和 URL 的方法cgi.escapeurllib.quote方法(以及清理)?这可用于防止HTTP 标头注入和类似的攻击。

例如...

我们让用户提供一个应该重定向到的 URL。我们希望防止注入攻击(其中SQL 注入是众所周知的一种)。撇开(为了这个讨论)安全问题(关于秘密自动转发到用户可以选择的域中的 URL),如果我们决定使用Location:header重定向,我们如何转义用户提供的 URL 以防止 HTTP-header注入(或检测它是否包含对 HTTP 有危险的值)?

现在,在我们实现该命令的 python 代码中redirect_to,我们希望像上面这样的输入要么被转义(使其无害),要么成为错误。我们怎么能这样做?

0 投票
0 回答
313 浏览

java - 使用 android 发送多部分消息

我有一条在 Android 中创建的 rfc822 消息。我需要通过电子邮件将其发送给指定的收件人:

这会导致 GMail 以NullPointerException.

如果我更换

它使用 rfc822 文本作为消息体,效果并不理想。

有没有办法通过 Android 电子邮件系统发送这种类型的消息?

0 投票
0 回答
462 浏览

c - 如何使用 libCurl 验证电子邮件地址以检查 RFC822 合规性

我正在尝试使用 C 中的 libCurl 在我的应用程序中实现电子邮件 SMTP 通知。

在发送通知之前,我想检查 FROM 和 TO 地址的 RFC 822 合规性。

目前我可以使用 JNI(JAVA javax.mail.internet.InternetAddress 类)来做到这一点

http://www.w3.org/Protocols/rfc822/

0 投票
1 回答
1010 浏览

ruby-on-rails - Rails 4 如何针对 rfc822 验证电子邮件

我正在使用默认的 Rails EmailValidator 来检查我的电子邮件,就像这样

电子邮件验证器:

和用户模型:

但这并没有将西里尔文电子邮件视为无效。我知道我可以用这个http://www.ex-parrot.com/pdw/Mail-RFC822-Address.html更改正则表达式,但我想知道是否有最简单的方法,用 gem 或其他东西。我已经安装了 rfc-822 但现在我不知道如何使用它。这里的描述https://github.com/dim/rfc-822/blob/master/lib/rfc822.rb#L27说要添加validates_format_of :email, :with => RFC822::EMAIL到模型但是当我这样做时,这就是我收到的

NameError: uninitialized constant User::RFC822

我错过了什么?

0 投票
0 回答
317 浏览

php - 如何对 mongodb 中的 rfc 822 时间戳格式字段进行排序?

我的目标是排序 rfc 822 时间戳格式,它作为 pubdate 字段存储在 Mongodb 中。我不想使用 PHP/Python 获取所有记录并使用它进行排序,因为需要将大量记录放在内存中。我在下面写一个例子,我的 mongo 字段看起来像这样,我有数百万条记录 -

我需要对 pubdate 字段进行排序,然后 PHP 会调用该字段

0 投票
2 回答
131 浏览

python - 从移动设备发送的电子邮件被奇怪地使用电子邮件库解码

我正在使用 Python imaplib 和电子邮件模块从 smtp 获取电子邮件列表,然后对它们进行处理。这是我用来抓取和解码电子邮件的片段:

当从 Hotmail 或 Gmail 发送电子邮件时,这就像一个魅力,但每当发送电子邮件时,例如,从 Android 默认邮件应用程序发送的消息将如下所示:

当我收到此消息时,我正在从我的移动设备发送电子邮件。我怀疑这有什么关系,更像是一些电子邮件发送者没有正确构建基于 RFC822 的电子邮件标题,但我需要以某种方式解决这个问题并能够检索每封电子邮件。

我将不胜感激有关如何处理此问题的一些提示。提前致谢。