0

_の前の最初のビットはピンのIDです... ZZtfjmGQは何に使用されますか?_cはサイズと関係があると思います。

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

node.jsで画像アップロードサービスを構築していますが、他のサイトが画像を保存するために何をしているのか興味がありました。

4

1 に答える 1

1

最終的な画像はCDNから提供され、URLのサブドメインから明らかです。ご指摘のとおり、最初のビットは画像のID、2番目のビットは画像バージョンのキャッシュ制限を回避するためのUID、最後のビットは画像サイズです。

CDNの制限は、アップロード後に画像を処理できないことです。これを回避するために、私のサービスはファイルをNodejsサーバーにアップロードし、そこで画像をクライアントに提供します。ユーザーが画像を切り抜くために使用できるjQueryスクリプトを使用して、切り抜き座標をサーバーに送り返します。ImageMagickを使用して、アップロードされた画像のさまざまなサイズを作成します。明らかにトリミングステップを排除し、アスペクト比を使用して必要な画像サイズを自動的に作成することができます。次に、エンドユーザーにホストするために最終的な画像をCDNにアップロードします。

ユーザーがすでにCDNにある写真を更新する必要がある場合、ユーザーはnodejsサーバーにアップロードし、画像が処理およびサイズ変更され、UIDハッシュが更新されてからCDNにアップロードされます。物事をクリーンに保ちたい(そしてCDNコストを削減したい)場合は、このステップで古い「バージョン」を削除することもできます。ただし、私のサービスでは、必要に応じて古いバージョンに戻るオプションを提供しています。

残りのCRUDアクションは、かなり自明です。IDを使用してCDNから利用可能な画像のリストを読み取ることができ(私のサービスには、より堅牢なクエリ操作を可能にするためのユーザーIDと画像IDがあります)、削除するのは削除する画像を識別するのと同じくらい簡単です。

于 2012-11-07T16:39:28.787 に答える