# Raw\_email 帖子字段将图像存储为 Base64 字符串

**URL:** <https://meta.discourse.org/t/raw-email-post-field-stores-images-as-base64-strings/233298>\
**Category:** Support\
**Created:** [2022年七月19日 14:41 UTC](https://meta.discourse.org/t/raw-email-post-field-stores-images-as-base64-strings/233298 "2022-07-19T14:41:15Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Canapin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/canapin/32/119591_2.png) [@Canapin](https://meta.discourse.org/u/Canapin)\
**Post date:** [2022年七月19日 14:41 UTC](https://meta.discourse.org/t/raw-email-post-field-stores-images-as-base64-strings/233298/1 "2022-07-19T14:41:16Z")

</div>

您好，

由于我正考虑更换我的 CDN（Stackpath），并且我知道 Discourse 会动态地在链接中设置 CDN URL，但我还是在论坛帖子中搜索了字符串“stackpath”，以查看有多少处出现。

搜索结果在 300 到 400 篇帖子之间。

我下载了数据，令我惊讶的是，它几乎是一个 100 MB 的文件！

显然，这是因为通过电子邮件发送的帖子中的图片似乎以 base64 字符串的形式存在于 **raw\_email** 字段中。

所以……在我看来，这似乎并不是一个真正的问题，但我希望对此能有一些澄清。

为什么图片会以这种方式存储在 **raw\_email** 字段中？有没有更好的方法？

这会以任何方式影响性能吗？对于许多人通过电子邮件回复并且涉及图片的论坛来说，情况会怎样？我们是否可以认为它占用了太多空间，但信息量却不多？

欢迎任何解释或额外信息。 🙂

---

<div class="post-metadata">

**Author:** ![supermathie](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/supermathie/32/507518_2.png) [@supermathie](https://meta.discourse.org/u/supermathie)\
**Post date:** [2022年七月19日 17:18 UTC](https://meta.discourse.org/t/raw-email-post-field-stores-images-as-base64-strings/233298/2 "2022-07-19T17:18:25Z")

</div>

> [@Canapin](#):
>
> Apparently, it’s because images in posts sent by email seem to be present as base64 strings in the **raw\_email** field.

这听起来有点过于简化了，但电子邮件就是这样发送图片的。既然我们存储了 `raw_email`……那么我们存储的就是这个。

可以把它想象成一个 100MB 的收件箱。对大多数网站来说，这只是九牛一毛。

您可以使用以下命令查找存储大小：

```plaintext
select sum(pg_column_size(raw_email)) / 1048576 as raw_email_MB from posts;

```

> [@Canapin](#):
>
> 有没有更好的方法？

那样的话我们就不会存储 `raw_email` 了……我猜可以争辩说，对于超过一定年龄的 `raw_email`，应该剥离大的 base64 内容……

> [@Canapin](#):
>
> 这会影响性能吗？

不太可能；它会占用磁盘空间，但除非您查看它，否则不应该被引用。

🤔

---

<div class="post-metadata">

**Author:** ![Canapin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/canapin/32/119591_2.png) [@Canapin](https://meta.discourse.org/u/Canapin)\
**Post date:** [2022年七月19日 17:35 UTC](https://meta.discourse.org/t/raw-email-post-field-stores-images-as-base64-strings/233298/4 "2022-07-19T17:35:29Z")

</div>

谢谢你详细的回答 🙂

---

<div class="post-metadata">

**Author:** ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)\
**Post date:** [2022年八月18日 17:35 UTC](https://meta.discourse.org/t/raw-email-post-field-stores-images-as-base64-strings/233298/5 "2022-08-18T17:35:43Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
