0

ImageResizerRemoteReader プラグインを使用して、サイトに外部画像を表示しています。

私には2つの問題があります:

1- メソッドを使用して画像ソース パスを生成すると、このRemoteReaderPlugin.Current.CreateSignedUrlようなエンコードされた URL が返されます。URL が非常に長いことがわかりますが、( TinyUrlgoo.glのように)小さい URL を生成できるオプションはありますか?

2- 外部画像がソース URL に存在しないかどうかを検出して、サイトに画像が表示されるのを管理および防止するにはどうすればよいですか? RemoteReader にオプションはありますか?

編集:RemoteReaderPlugin.Current.FileExistsメソッドもテストしましたが、常にfalse.

4

1 に答える 1

1

1) 短い URL を作成するということは、長い URL をデータベースに格納することを意味します。データベースは遅く、障害点を追加します。そのため、ウェブ全体で壊れたショートリンクが常に見られます。

Config.Current.Rewrite独自のショートリンクを実装するために使用できます。ただし、データベースの状態が良好でない場合は、速度が低下し (ネットワーク レイテンシ)、スケーラビリティが低下し、イメージが破損します。

2) HTTP HEAD リクエストを作成して、存在するかどうかを確認します。HTTP リクエストは遅いことに注意してください。画像リクエスト中にこれを行うと、最大で 2 倍遅くなります。すべての画像のページ レンダリング中にこれを行うと、非常に遅くなります。可能であれば、最初に URL を取得して結果をキャッシュするときに、これを行うようにしてください。これをオンザフライで行うのは得策ではありません。

RemoteReaderPlugin.Current.FileExists は、パスがリモート URL 構文内にあるかどうかのみを検出します。実際には HTTP リクエストで存在をチェックしません (#2 を参照)。

于 2013-10-11T16:04:47.550 に答える