1

我目前正在使用 Google Closure Library 编写 HTML5 WYSIWYG,并且我提供用户只需将图像文件拖放到带有文本的 contenteditable 字段即可添加图像。

所以我有两种方法来存储这些图像:

1.从拖放的文件中检索数据 URL,创建一个 IMG 标签,将检索到的数据 URL 设置为该图像的属性 SRC 的值,并将该 IMG 标签插入到编辑器的字段中。当用户提交表单时,我只需将所有检索到的 HTML 保存在我的 MySQL 数据库中,稍后就可以用图像呈现他的文本。

2.将拖放的图像上传到我的服务器并保存为常规文件。然后服务器会这样回答:“图像已保存,其 URL 为http://example.com/images/uploaded-image.png ”。之后,我将执行类似于我的项目 1 的步骤(创建一个带有属性 src="http://example.com/images/uploaded-image.png" 的 IMG 标记并将其插入到可编辑字段中)。

第一种方式更多地加载数据库,因为它需要将图像 dataUrl 与文本一起存储在数据库字段中。但它使图像添加更加容易和快速,因此它改善了用户体验。

第二种方式减少数据库的负载,因为图像将单独存储(在文件系统中),但这种方式需要对服务器的更多请求以及将每个图像添加到所见即所得文本中的一些处理器时间。此外,它不会立即向用户显示结果,因此用户需要等待他的图像上传,这会使用户体验变得更糟。

考虑到所有利弊,我需要帮助来了解在我的情况下哪种方式更可取。

4

1 回答 1

0

另一种方法是不仅将图像存储在一个文件中,而且将带有图像的完整 HTML 存储在一个文件中。并使用数据库存储指向 HTML 文件的链接。然后设置 Nginx 并获得最佳性能。恕我直言,如果您的应用程序是所见即所得的,那么在编辑之前应该在浏览器中加载并完全布局内容。

于 2012-02-27T11:19:24.750 回答