gpt4 book ai didi

silverlight - 有什么方法可以强制WebClient,而不返回缓存的数据?

转载 作者:行者123 更新时间:2023-12-04 03:46:52 24 4
gpt4 key购买 nike

我正在从Web服务器目录中检索图像,如下所示:

        WebClient webClientImgDownloader = new WebClient();
webClientImgDownloader.OpenReadCompleted += new OpenReadCompletedEventHandler(webClientImgDownloader_OpenReadCompleted);
if(uriIndex < uris.Count())
webClientImgDownloader.OpenReadAsync(new Uri(uris[uriIndex], UriKind.Absolute));

但是我注意到如果删除图像,silverlight会继续检索图像,就好像它在那里。

然后,当我在FireFox中键入图像URL时,我也看到了图像,但是然后单击 Reload,它给了我相应的错误,即图像不存在。然后,当我再次运行Silverlight应用程序时,它也适本地给了我一个错误,即该图像不存在,好像浏览器已清除某个位置的缓存标志一样。

然后,如何通过代码中的WebClient进行“刷新”,以便如果服务器上突然不存在图像,Silverlight不会继续为我提供该图像的缓存副本?

最佳答案

这是一个棘手的问题,因为缓存通常是由网站的 header 未指定无缓存引起的。我发现,过去处理这些缓存问题的最简单方法是简单地提供一个随机的查询字符串参数,以便Web服务器将每个请求解释为一个新请求。

如果您当前正在请求www.domain.com/image.jpg,请尝试www.domain.com/image.jpg?rand=XXXX,其中XXXX是服务器端代码中生成的随机值。

关于silverlight - 有什么方法可以强制WebClient,而不返回缓存的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2425219/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com