2

私はグラバターに非常に奇妙な問題を抱えています。

私はパブリックデフォルトイメージを持っていますexample.com/image.jpg

かなり前 (1 週間以上前) に公開 Web サイトでこの画像を変更しました。

それ以来localhost、Web サイトを開発しているときに古いデフォルト イメージが表示されますが、リモート ドメインで Web サイトを公開すると、デフォルト イメージが正しいイメージ、新しいイメージとして表示されます。

ブラウザのキャッシュを何度もクリアし、すべての主要なブラウザで試しました。

なぜこれが起こっているのか誰にも手がかりがありますか?

これは私がURLを作成している方法です

 string defaultImg = HttpContext.Current.Server.UrlEncode("http://example.com/image.jpg");
 string URL = string.Format("http://www.gravatar.com/avatar/{0}?r=pg&s={1}&d={2}",hash,size,defaultImg);

そしてアバターのリクエスト

private bool makeAvatarRequest(string URL)
{
    try
    {
        WebRequest request = WebRequest.Create(URL);
        using (WebResponse response = request.GetResponse())
        {
            using (Stream responseStream = response.GetResponseStream())
            {
                displayImage(responseStream);
                return true;
            }
        }
    }
    catch (WebException ex)
    {
        return false;
    }
}

そして表示画像

private void displayImage(Stream stream)
    {
        HttpContext.Current.Response.ContentType = "image/png";
        System.Drawing.Image img = System.Drawing.Image.FromStream(stream);
        MemoryStream temp = new MemoryStream();
        img.Save(temp, ImageFormat.Png);
        byte[] buffer = temp.GetBuffer();
        HttpContext.Current.Response.OutputStream.Write(buffer, 0, buffer.Length);

        img.Dispose();
        temp.Dispose();
    }
4

0 に答える 0