我正在 ASP.NET 中构建一个基于 AJAX 的漂亮照片库。
我所做的是显示一组缩略图,在单击每个缩略图时我发布一个 AJAX 请求,根据缩略图我得到一些 URL 并显示漂亮的照片库。一切准备就绪。但。
让我解释。
Thumbnail1 Thumbnail2 Thumbnail3
Thumbnail4 Thumbnail5 Thumbnail6
Thumbnail7 Thumbnail8 Thumbnail9
....
当我们单击 Thumbnail1 时,它会发布一个 AJAX 请求并获取一些这样的 url。
"../GalleryHandler.ashx?id=0"
"../GalleryHandler.ashx?id=1"
"../GalleryHandler.ashx?id=2"
"../GalleryHandler.ashx?id=3"
"../GalleryHandler.ashx?id=4"
我根据单击的缩略图和 id 对 GallerHandler.ashx 进行一些检查,并提供适当的图像作为 Web 服务的输出。问题是如果我单击 Thumbnail2 并返回一些类似这样的 URL
"../GalleryHandler.ashx?id=0"
"../GalleryHandler.ashx?id=1"
"../GalleryHandler.ashx?id=2"
"../GalleryHandler.ashx?id=3"
"../GalleryHandler.ashx?id=4"
"../GalleryHandler.ashx?id=5"
所以当prettyPhoto画廊弹出和显示画廊它显示从id0到id4的旧图像甚至没有去ashx页面检查(我放置断点并检查)并显示Thumbnail1的旧图像,但是对于id5它去ashx 页面并正确获取新图像。
在一些谷歌之后,我尝试将它放在“ProcessRequest”中。
context.Response.Clear();
context.Response.Cache.SetCacheability(HttpCacheability.Public);
context.Response.Cache.SetExpires(DateTime.MinValue);
但它不会解决问题,但 Chrome 会正确显示我期望其他浏览器显示的内容,就像我解释的那样。
我是这个 httphandler 的新手,所以即使我错了和误解也请指导我。谢谢。