我正在尝试检查文件是否在给定日期之后被修改。我发现我正在尝试使用 Java 的 HttpURLConnection 进行“条件获取”,但我从未得到 304 状态代码。这似乎是我需要的。但如果我尝试:
URLConnection connection = new URL("http://cdn3.sstatic.net/stackoverflow/img/favicon.ico").openConnection();
connection.setRequestProperty("If-Modified-Since", "Wed, 06 Oct 2010 02:53:46 GMT");
System.out.println(connection.getHeaderFields());
输出是:
{null=[HTTP/1.1 200 OK], ETag=["087588e2bb5cd1:0"],
Date=[Wed, 28 Nov 2012 12:39:31 GMT], Content-Length=[1150],
Last-Modified=[Sun, 28 Oct 2012 16:44:54 GMT], Accept-Ranges=[bytes],
Connection=[keep-alive], Content-Type=[image/x-icon], X-Cache=[HIT],
Server=[NetDNA-cache/2.2], Cache-Control=[max-age=604800]}
编辑
我试过今天的日期,但仍然没有返回 304。
格林威治标准时间 2012 年 11 月 28 日星期三 12:59:56
它应该返回 304 但你可以看到它没有,任何帮助都被占用了。