sitecore 8.1のサイズ変更イメージに問題があります。私は多くの記事をオンラインで見てきましたが、私が何をしているのかわからなかったのですが、私が心に留めていることは正しい方法ではないかもしれませんが、私がまだここに投稿しているものを推測してください。SItecore 8.1 MediaRequestHandlerでハッシュを使用したイメージのサイズ変更
私たちは本当にレイアウトを持っていないWebApiベースのプロジェクトを持っています.Jsonの要求と応答に基づいています。この
応答
"components": [
{
"type": "background",
"parallax": 0,
"data": {
"type": "image",
"value": "-/media/images/pages/home/section-2.jpg"
}
},
のようになりますされ、このJSONレスポンスがキャッシュされてきているので、この段階でハッシュ化された画像を返すようにしたくありません。リターン画像SRCは、その時のシステムのイメージ要素に渡されたときに、デバイスの種類を検出し、クエリ文字列でそれを渡しますタイプに基づいて、この
"-/media/images/pages/home/section-2.jpg?type=mobile"
のようなものは、クエリ文字列で定義します。 sitecoreアイテムからサイズ変更イメージの幅と高さの値を読み込んでいます。このすべてが起こっている
public class MediaRequestHandler : Sitecore.Resources.Media.MediaRequestHandler
{
protected override bool DoProcessRequest(HttpContext context, MediaRequest request,
Sitecore.Resources.Media.Media media)
{
//Load sitecore item based on the type define in querystring
if (!string.IsNullOrEmpty(context.Request.QueryString["type"]))
{
var mediaItemHashedUrl = Sitecore.Resources.Media.HashingUtils.ProtectAssetUrl(
Sitecore.Resources.Media.MediaManager.GetMediaUrl(
media.MediaData.MediaItem,
new MediaUrlOptions()
{
Language = Context.Language,
Width = 100, // Width val would be coming from siteore item
Height = 75 // Height val is also coming from siteore item
}));
}
}
return base.DoProcessRequest(context, request, media);
}
以下& DoProcessRequest方法のサンプルが今の質問はどのように私は、追加の要求を渡すと、このハッシュ化された画像を読み込むことができているMediaRequestHandlerクラスですか?
ご協力いただければ幸いです。
カスタムmediarequesthandlerを使用せず、代わりにメディアハッシュを含むモバイルイメージURLを含めるようにJSONレスポンスをカスタマイズすることはできますか?その後、デバイスがモバイルとして検出された場合は、代わりにそのURLを使用できますか? – Jeroen
私は恐れていますが、このJSONレスポンスはキャッシュされているので、ハッシュされたイメージURLを返すことは望ましくありません。私たちにはかなりの種類のデバイスがあります –