Adding "Expires" headers to improve caching client side.
This commit is contained in:
parent
f6bea49c02
commit
984c74b63f
1 changed files with 4 additions and 1 deletions
|
|
@ -69,7 +69,7 @@ public class AlbumServlet
|
||||||
if (pathInfo != null && pathInfo.startsWith(basePrefix)) {
|
if (pathInfo != null && pathInfo.startsWith(basePrefix)) {
|
||||||
pathInfo = pathInfo.substring(basePrefix.length());
|
pathInfo = pathInfo.substring(basePrefix.length());
|
||||||
} else {
|
} else {
|
||||||
res.sendError(HttpServletResponse.SC_NOT_FOUND);
|
res.sendError(HttpServletResponse.SC_NOT_FOUND, "pathinfo=" + pathInfo);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -153,12 +153,14 @@ public class AlbumServlet
|
||||||
|
|
||||||
if (notModified(req, file)) {
|
if (notModified(req, file)) {
|
||||||
res.setStatus(HttpServletResponse.SC_NOT_MODIFIED);
|
res.setStatus(HttpServletResponse.SC_NOT_MODIFIED);
|
||||||
|
res.setDateHeader("Expires", System.currentTimeMillis() + (30 * 24 * 3600 * 1000)); // 30 days
|
||||||
System.out.println(file.getName() + " not modified (based on date)");
|
System.out.println(file.getName() + " not modified (based on date)");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
String fileEtag = thumbnail.getEtag() + "-" + size;
|
String fileEtag = thumbnail.getEtag() + "-" + size;
|
||||||
if (etagMatches(req, fileEtag)) {
|
if (etagMatches(req, fileEtag)) {
|
||||||
res.setStatus(HttpServletResponse.SC_NOT_MODIFIED);
|
res.setStatus(HttpServletResponse.SC_NOT_MODIFIED);
|
||||||
|
res.setDateHeader("Expires", System.currentTimeMillis() + (30 * 24 * 3600 * 1000)); // 30 days
|
||||||
System.out.println(file.getName() + " not modified (based on etag)");
|
System.out.println(file.getName() + " not modified (based on etag)");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
@ -195,6 +197,7 @@ public class AlbumServlet
|
||||||
res.setStatus(HttpServletResponse.SC_OK);
|
res.setStatus(HttpServletResponse.SC_OK);
|
||||||
res.setDateHeader("Last-Modified", file.lastModified());
|
res.setDateHeader("Last-Modified", file.lastModified());
|
||||||
res.setHeader("ETag", fileEtag);
|
res.setHeader("ETag", fileEtag);
|
||||||
|
res.setDateHeader("Expires", System.currentTimeMillis() + (30 * 24 * 3600 * 1000)); // 30 days
|
||||||
res.setContentType(cimg.mimeType);
|
res.setContentType(cimg.mimeType);
|
||||||
res.setContentLength(cimg.bits.length);
|
res.setContentLength(cimg.bits.length);
|
||||||
res.getOutputStream().write(cimg.bits);
|
res.getOutputStream().write(cimg.bits);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue