问题标签 [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 回答
6635 浏览

c# - RFC-1123 的 DateTime 给出了不准确的时区

如果我得到一个 DateTime 对象的 RFC-1123 格式的日期,它会给出当前的本地时间,但会给出 GMT 的时区(这是不准确的)。
DateTime.Now.ToString("r");
返回
Fri, 12 Feb 2010 16:23:03 GMT

下午 4:23,但我的时区是 UTC+10(另外,我们目前正在观察夏令时)。

现在,我可以通过首先转换为 UTC 来获得“正确”的返回值
DateTime.UtcNow.ToString("r");

Fri, 12 Feb 2010 05:23:03 GMT

但是,理想情况下,我想获得正确的时区,我猜应该是
Fri, 12 Feb 2010 16:23:03 +1100

传入当前的 CultureInfo 不会改变任何东西。我可以使用 TimeZoneInfo.Local.GetUtcOffset(...) 获得一个 UTC 偏移量,并从中格式化一个时区字符串,但是去掉 GMT 位并替换它似乎非常混乱。

有没有办法强制它包含正确的时区?

0 投票
1 回答
2859 浏览

ruby - 如何在 Ruby 中通过 IMAP 获取电子邮件的收件人地址

我们有一个用户的邮件帐户被垃圾邮件淹没。我怀疑他拥有大量的电子邮件帐户,因此他可能只使用一两个地址。

我想敲出一些代码来扫描他的邮箱并报告邮寄到的地址数量(理想情况下是那些发送到他邮箱的地址,例如,如果他是密件抄送并且收件人:是 billg@microsoft.com,我想知道他收到的是哪个地址)。

我可以得到 To: 如果它存在于信封中,但如果没有,那么我需要使用 Cc: 之类的替代方法,并且可能实际上在消息标头中获取 regex-y 到传递此消息的 ID。我可以处理。我只是不确定如何拆分 Ruby msg 对象。

所以也许对我来说一个更好的问题是,“知道我有一个从 imap.fetch 返回的对象 msg,我如何检查各种可用的方法,例如 msg.to 和 msg.from?”

也许还有“我应该使用像 Ruby's Mail 这样的精美邮件库吗?”

到目前为止的代码 - 我对 Ruby 真的很陌生,好吗?

0 投票
2 回答
515 浏览

c# - 如何使用 c# 将 Word 文件内容(带有图像和表格)转换为 RFC 822 格式?

  1. 我想读取一个 Word 文件(包含图像和表格)。
  2. 之后,我想将其内容转换为“RFC 822 格式”。

寻找上面的一些 APIS 和示例代码。

0 投票
1 回答
1034 浏览

iphone - 如何解析原始电子邮件源并提取 HTML 部分?

在我的 iPhone 应用程序中,我收到了电子邮件的原始来源,格式为 RFC822(或“eml”)。我想要这条消息的 HTML 部分(如果存在的话)。

与其尝试自己解析它并转换转义字符等,我想我会检查一下是否有人知道一个objective-c库来为我做这件事。

在 .NET 中,我一直将Mailbee类用于与电子邮件相关的任何事情,但我似乎找不到任何与可可类似的东西。

0 投票
1 回答
4001 浏览

windows - 如何在 Windows 上的 Perl 中优雅地打印 %z(时区)格式?

如何在 Perl 中以 RFC822 格式优雅地打印日期?,但特定于 Windows。

在窗户上:

产量:

我期待:

就像任何人在 Linux 系统上一样。如何在 Windows 上获得“-0500”?

更新:

这真的很糟糕吗?(假设我不允许安装 DateTime 或以任何方式打包它)

我注意到的问题是这会返回-0600vs -0500(我期望的),但我的猜测是由于 DST 计算或其他原因?我主要是在寻找一个像样的近似值,但我不知道为什么mktime()要玩 DST?

更新:

发现tzoffset()如果您只是手动强制 DST 关闭,就 DST 而言,这可能会更加“稳定”。

这样,无论您是否是 DST,它总是会返回-0500您想要的%z.

0 投票
7 回答
14025 浏览

java - Java 中的 RFC822 时区解析

我有一个被 Dojo 转换为 RFC822 格式的 JS 日期。函数调用 - dojo.date.toRfc3339(jsDate) 生成以下日期 - 2007-02-26T20:15:00+02:00。

我有一个应用程序,它使用 Java 日期 SimpleDateFormat 来解析上面生成的日期。由于时区,我在解析此日期格式时遇到问题。我试图使用

yyyy-mm-DD'T'hh:mm:ssZ

这失败了,因为时区的 'Z' 不需要 ':' 字符。有谁知道我将如何指定一个模式来处理带有“:”的 RFC822 日期?

修订:

感谢您正确解释我正在尝试做的事情:) 我的意思是说日期是在 RFC3339 中生成的,我需要 RFC822。看起来我将不得不覆盖 JavaScript。我希望不必这样做,并且可以指定日期格式模式而无需修改任何 Java 代码,因为日期格式只是注入到应用程序的 Spring bean 中。

只是为了完整性,有没有办法在日期格式表达式中指定忽略序列中的字符(不进行字符串操作/替换)?在这种情况下,我会说忽略任何':'或者只是忽略时区?

0 投票
1 回答
1829 浏览

c# - 在 .NETMF 4.0 中解析 RFC822-Datetime

我有一个用 .NETMF 编写的应用程序,它要求我能够解析 RFC822-Datetime。

通常,这很容易,但 NETMF 没有 DateTime.parse() 方法,也没有某种模式匹配实现,所以我几乎被卡住了。

有任何想法吗?

编辑:可能需要“智能”解决方案。这很困难的部分原因是所讨论的日期时间倾向于在其中包含额外的空格(但只是有时)。一个简单的子字符串解决方案可能有一天会奏效,但当日期时间在各部分之间的某处有额外的空间时,下一次会失败。我无法控制日期时间,它来自 NOAA。

0 投票
2 回答
6608 浏览

mime - MIME RFC“Content-Type”参数混淆?不明确的 RFC 规范

我正在尝试为multipart/relatedin C++/Qt 实现一个基本的 MIME 解析器。

到目前为止,我一直在为标头编写一些基本的解析器代码,并且我正在阅读 RFC 以了解如何尽可能地接近规范。不幸的是,RFC 中有一部分让我有点困惑:

来自RFC882第 3.1.1 节:

每个标题字段可以被视为一个单一的 ASCII 字符逻辑行,包括一个字段名称和一个字段主体。为方便起见,这个概念实体的字段主体部分可以拆分为多行表示;这称为“折叠”。一般规则是,无论哪里可能存在线性空白(不仅仅是 LWSP 字符),都可以插入紧随其后的至少一个 LWSP 字符的 CRLF。因此,单行

好的,所以我只是解析一个标题字段,如果 CRLF 后跟线性空格,我只是以一种有用的方式将它们连接起来以产生一个标题行。让我们继续...

来自RFC2045第 5.1 节:

在 RFC 822 的增强 BNF 表示法中,Content-Type 标头字段值定义如下:

[...]

好的。因此,如果您想指定Content-Type带有参数的标头,似乎只需这样做:

...并且同一标题的折叠版本如下所示:

正确的?好的。当我继续阅读 RFC 时,我在RFC2387第 5.1 节(示例)中遇到了以下内容:

嗯,这很奇怪。你看到Content-Type标题了吗?它有许多参数,但并非所有参数都有“;” 作为参数分隔符。

也许我只是没有正确阅读 RFC,但如果我的解析器严格按照规范定义的方式工作,typeandstart-info参数将导致单个字符串或更糟,导致解析器错误。

小伙伴们,你们对此怎么看?只是 RFC 中的一个错字?还是我错过了什么?

谢谢!

0 投票
2 回答
3462 浏览

python - 使用 Python 重新组装以“消息/部分”编码的电子邮件消息

有没有办法在 Python 中重新组合编码的电子邮件消息Content-Type: message/partial(即RFC 1521的“7.3.2. The Message/Partial subtype”部分)?

特别是,给定一组电子邮件,如何将它们合并回原始邮件?IE

merge_emails必须做什么?有任何 Python 项目这样做过吗?

人们可以期待这样一封电子邮件:

这是我最初的想法:

这行得通吗(就这么简单)?你怎么能重新组装这封电子邮件?

作为在 Python 中执行此操作的替代方法,是否有命令行 Unix/Mac OS X 程序可以执行此操作?

感谢您阅读以及您可能提供的任何信息。

亲切的问候,

布赖恩

0 投票
3 回答
1480 浏览

xslt - Saxon XSLT 2.0 和 RFC 822 日期格式

将 xs:dateTime 格式化为 RFC 822 的正确方法是什么?