0

_ 之前的第一位是引脚的 id ... ZZtfjmGQ是做什么用的?我假设 _c 可能与大小有关。

http://media-cache-lt0.pinterest.com/upload/33284484717557666_HZtfjmFQ_c.jpg

我正在 node.js 中构建图像上传服务,并且很好奇其他站点如何存储图像。

4

1 回答 1

1

最终图像由 CDN 提供,URL 中的子域很明显。正如您所指出的,第一位是图像的 id,第二位是 UID,用于解决图像版本的缓存限制,最后一位是图像大小。

CDN 的一个限制是无法在上传后处理图像。为了解决这个问题,我的服务将文件上传到我的 Nodejs 服务器,然后我将图像返回给客户端。我使用用户可以用来裁剪图像的 jQuery 脚本,该脚本将裁剪坐标发送回服务器,我使用 ImageMagick 创建上传图像的各种尺寸。您显然可以消除裁剪步骤,只需使用纵横比来自动创建所需的图像尺寸。然后我将最终图像上传到 CDN 以托管给最终用户。

当用户需要更新 CDN 中已有的照片时,用户上传到 nodejs 服务器,对图像进行处理和调整大小,更新 UID 哈希,然后上传到 CDN。如果您想保持干净(并降低 CDN 成本),您也可以在此步骤中删除旧的“版本”。但是,在我的服务中,如果需要,我可以选择回溯到旧版本。

其余的 CRUD 操作是不言自明的。您可以使用 ID 读取 CDN 中可用的图像列表(我的服务有一个用户 ID 和一个图像 ID 以允许更强大的查询操作),删除就像识别要删除的图像一样简单。

于 2012-11-07T16:39:28.787 回答