问题标签 [mail-gem]

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 投票
1 回答
160 浏览

ruby-on-rails - 使用 ruby​​ 的 Net::IMAP 库时,邮件正文不包含返回(\n)

我正在使用 Ruby 的 Net::IMAP 库来获取邮件并使用 Mail gems read_from_string 函数来获取正文,但是会发生的是包含 html 部分的邮件正确显示,但只有文本/纯文本部分的邮件连续显示而没有任何返回即使原始邮件有字符...请提出一些建议...提前谢谢!

我的代码:

取邮件(我已经有了 uid)

提取标题和正文

检查多部分

我在我的视图中使用了@body.to_s,但它没有给出正确的输出:(

邮件的内容类型

内容类型:文本/纯文本;charset="iso-8859-1" 内容传输编码:8bit

0 投票
1 回答
348 浏览

ruby-on-rails - 如何在 Rails 中使用 gem mail 的 pop3 从多个电子邮件地址检索电子邮件?

在我的项目中,我将不得不编写不同的 cron 作业来读取来自不同电子邮件地址的电子邮件以执行不同的任务。我正在使用邮件 gem,但问题是,retriever_method 是单例的。因此,当我提到新的电子邮件地址和新密码时,retriever_method 的先前设置将被更改。因此,当 cron 作业同时运行时,我无法检索电子邮件。

假设,在我的第一个 cron 工作中,我有类似以下设置

在我的第二个 cron 工作中,如果我使用类似的东西

在这种情况下,两者都将更改为 username2

有什么解决方法吗?或任何其他建议来完成这项工作。由于其他原因,我不想 IMAP。

任何建议将不胜感激。

0 投票
0 回答
93 浏览

ruby - 如何在使用“邮件”gem 时避免执行过期错误

我正在开发一个 webscraper,它将每周发送一个包含 Ruby 新内容的 CSV。对于邮件组件,我决定使用Mail gem。经过大量的修补后,我得到了它来发送一些测试电子邮件。但是,我经常收到此错误:

我有一个合理的互联网连接,并且无法检测到任何类型的错误模式。这是我的邮件代码:

0 投票
2 回答
2440 浏览

ruby-on-rails - 如何在 ruby​​ on rails 中发送带有邮件宝石的电子邮件

我正在尝试使用mail gem发送电子邮件。但不幸的是,它不起作用。这是我的控制器。

此代码正在产生此错误

Errno::ECONNREFUSED - 连接被拒绝 - “localhost”端口 25 的连接(2):

但是,当我安装mailcatcher并配置我的控制器以将邮件发送到 mailcatcher 时,我可以在我的 mailcatcher UI 中看到电子邮件。

我也将这两行添加到我的 config/environment/development.rb

从我的搜索中,我看到有些人提到不要在开发模式下发送电子邮件,但是在这种情况下,我真的想测试全部功能。

更新

正如@Uzbekjon 和@SimoneCarletti 建议的那样,我将代码更改为使用ActionMailer。我在 app/mailer/ 中创建了一个文件,我从我的控制器中调用它。

这是我的邮件

但是我仍然遇到同样的错误。

Errno::ECONNREFUSED - 连接被拒绝 - “localhost”端口 25 的连接(2):

回答

所以我找到了解决方案。是的,您需要使用 ActionMailer。之后,您需要转到config/environments/development.rb,并修改并添加以下行:

此外,如果 Gmail 抱怨此问题:

Net::SMTPAuthenticationError - 534-5.7.9 需要特定于应用程序的密码

转到此链接,让不太安全的应用程序访问 Gmail。

其他配置可用于雅虎等其他服务。只需谷歌它。

0 投票
1 回答
618 浏览

ruby - ruby 的 Mail gem:如何查看附件是否内联

说,我在一个文件中有一个原始邮件消息,我读它就像

它有附件,其中一个是内联图片。

其他只是一些文件。

我需要的是知道附件是否是内联的。有一种inline?方法,对于非内联附件,它就像一个魅力

但是让我们回到我们pic这里:

这是不对的。我也试过

这也不太好。

有没有办法在这里有一个真/假值?

0 投票
2 回答
788 浏览

ruby-on-rails - Ruby 邮件 gem - 从特定电子邮件地址搜索收件箱

有人知道如何使用 Ruby 中的“邮件”gem 从一组电子邮件地址中获取邮件吗?我已经看到了获取未读消息的线程,如下所示:

但我找不到如何从某个地址获取消息。我试过了:

但它不起作用。

我知道IMAP 协议的第 6.4.4节指出了可用于搜索消息的不同搜索标志,但我似乎无法使其工作。

0 投票
1 回答
852 浏览

ruby-on-rails - 使用 ruby​​ 从 Microsoft graph rest api Outlook 消息中提取电子邮件正文

我通过 Microsoft Graph 或直接从 Ruby 的 Rest Api 从 Outlook 获取电子邮件,而不使用任何 Microsoft SDK。

我面临的问题是我无法从 Microsoft 返回的响应中获取电子邮件正文。使用 Ruby Mail gem,我尝试通过以下方式解析响应:

返回:

我如何解析这个,所以我得到了电子邮件正文,没有应该返回httparty rock的 html 降价。

作为参考,这里是指向Microsoft 的 api 文档的链接,这是返回给我的完整 api 响应:

0 投票
1 回答
589 浏览

ruby-on-rails - 升级到 Rails 5.0.6 后 Mail gem 不发送电子邮件

我将我的 Rails 应用程序从 4.2.5 升级到 5.0.6。现在Mail gem 不会发送电子邮件。我似乎没有收到错误。我没有运气将 Mail gem 更新到最新版本。我不确定还能尝试什么。

我在跑步:

导轨 5.0.6

红宝石 2.3.0

邮件 2.7.0

控制器/send_email.rb

更新:

我也尝试使用 Action Mailer 发送电子邮件。它说它已在控制台中发送,但从未交付。我对 Action Mailer 使用了与 Mail gem 类似的设置。

配置/环境/development.rb

我从控制台运行它:

控制台输出:

解决方案:

当我需要查看未知错误时,我有一些代码会发送电子邮件。当我更新 Rails 时,代码陷入了一个快速发送大量电子邮件的循环中。这导致我的服务器提供商将电子邮件帐户标记为垃圾邮件帐户。我不确定为什么我的原始代码没有显示任何错误,但是当我运行EmailMailer.sample_email(UserEmail.first).deliver_now它时,它给了我一条错误消息,帮助我追踪它。

0 投票
1 回答
82 浏览

ruby - 从 Localhost 到 Postfix 的 Ruby Mail Gem 中继访问

我在一个没有FQDN. 我正在开发Ruby和使用mailgem。我在 LAN 上托管自己的邮件服务器。我想将传出的电子邮件转发到此服务器,转发给 gmail 收件人(示例)。

由于我在我的工作站 ( localhost) 上,它没有被识别为我的 LAN 域之一的一部分(我有一个static IP),它没有被Postfix(来自我的邮件服务器日志)识别:

我可以mail在另一个很好的盒子上正确使用宝石FQDN。我似乎无法让它在我的工作站上工作。正如邮件服务器日志中所述:

我假设这是来自 的机器名称,而不是来自的电子邮件发件人。我怎样才能告诉邮件服务器我不是localhost?我已经搞砸了relay和其他无济于事directivespostfix所以我正在尝试修改Ruby语法以使服务器识别我。

任何关于我如何让它发挥作用的见解都值得赞赏。这是我的开发箱,它在我的生产服务器上工作,但我想让它在我的开发箱上工作。

0 投票
0 回答
73 浏览

ruby-on-rails - 使用邮件和 erb gem 发送邮件

我正在尝试使用 Mail gem 和 ERB gem 发送电子邮件,但我一直收到此错误TypeError Exception: no implicit conversion of Hash into Integer

我阅读了 Mail Gem 文档和 ERB 文档,并按照他们的说明进行操作,但它不起作用。

这是方法,email是目的地,errors是一个数组,其中包含可能发生的错误(如果没有任何问题,则为空)

有谁知道发生了什么?