通过邮戳发送电子邮件时如何截断 HtmlBody

How can I truncate the HtmlBody when sending emails through postmark

提问人:Hernan Acosta 提问时间:10/1/2022 最后编辑:Hernan Acosta 更新时间:10/1/2022 访问量:178

问:

我在我的 rails 应用程序中使用邮戳发送电子邮件,其中电子邮件内容是自动生成的。问题是在某些情况下,我从邮戳中收到此错误。

Postmark::InvalidEmailAddressError

Invalid 'HtmlBody' value. It should be less than 5242880 characters in length.

如何截断 HtmlBody 内容以避免此错误使用ActionMailer

Ruby-on-Rails ActionMailer 邮戳

评论

0赞 Hernan Acosta 10/1/2022
我已经看到存在一种叫做拦截器的东西 guides.rubyonrails.org/...,我正在尝试使用此功能并在拦截器内做一些事情,但我如何确保这仍然是一个 html ?message.body = message.body.truncate(5242880)
0赞 max 10/1/2022
这只是一个直截了当的坏主意。你不能只是截断一个包含HTML的字符串,并期望结果是一个有效的HTML文档--你最终会得到一堆不匹配的标签和其他问题。您需要做的是调查为什么它这么长并解决问题 - 例如通过减少内联 CSS 和其他混乱的数量。
0赞 Hernan Acosta 10/3/2022
您如何看待做类似 ?,在给定截断字符串的情况下生成 html。Nokogiri.HTML5(truncated_string).to_html

答: 暂无答案