【发布时间】:2021-06-18 17:46:10
【问题描述】:
我正在制作一个休息 API,用户可以在其中获取和发布带有标签的图像。该 API 还将能够为图像生成调色板。我想知道将图像发布到 API 的最佳方式是什么,以及 API 应该以什么格式存储图像。我正在考虑使用 base64 编码的图像,但我不确定。
【问题讨论】:
我正在制作一个休息 API,用户可以在其中获取和发布带有标签的图像。该 API 还将能够为图像生成调色板。我想知道将图像发布到 API 的最佳方式是什么,以及 API 应该以什么格式存储图像。我正在考虑使用 base64 编码的图像,但我不确定。
【问题讨论】:
是的,您可以使用 base64 对文件(图像)进行编码和解码。 它安全可靠。 或者 如果您的意思是通过图像句柄读取/写入,那么最好的方法是将图像存储到文件系统中,然后访问它们存储在数据库中的 URL。如果您想通过编辑来处理图像,然后使用云服务存储在 AWS S3 等文件系统中,那么您可以使用浏览器的 Java/JavaScript 插件专注于编辑部分。但是,无论您是编辑还是写入某个数据库,最好使用文件系统物理存储图像文件并使用数据库中的某个 URL 定位它们。编写 REST 或任何 API 时应牢记文件处理的基本结构。即使没有人限制您,任何大型文件都不应作为 CLOB 或 BLOB 保存到 DB 中。最好将文件(图像)保存到 S3 等文件系统中。我已经编写了用于将文件写入和读取到 DB 的 API,该 DB 体积小,很少需要访问。
【讨论】: