如果-Modified-Since的日期格式(If-Modified-Since Date Form

2019-07-04 04:20发布

我现在正在写一个服务器,我想检查“如果-Modified-Since的:”头。
既然有这么多的日期的方法,这方法我应该考虑检查一下,像通常的方法(毫秒在浏览器中使用的)....

Follwing是howi没有为毫秒格式。

  Date date;

 //dateS is a substring of If-Modified-Since: header
 try{
  long mills = Long.parseLong(dateS);
  } catch (NumberFormatException e)
   {e.printStackTrace();
  }
  date = new Date(mills);

我也想检查“星期三,2005年10月19日10:50:00 GMT”格式。 我怎样才能更改日期转换成毫秒?

     SimpleDateFormat dateFormat = new SimpleDateFormat(
                "EEE, dd MMM yyyy HH:mm:ss z");

        // to check if-modified-since time is in the above format
        try {

            ifModifiedSince = dateFormat.parse(date);
            ?????????????????????
        } catch (ParseException e1) {
        }

请帮我换款以上并请告诉我,如果有任何日期格式,我应该检查..

Answer 1:

HTTP应用程序在历史上允许的日期/时间戳的表示三种不同格式:

Sun, 06 Nov 1994 08:49:37 GMT  ; RFC 822, updated by RFC 1123
Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036
Sun Nov  6 08:49:37 1994       ; ANSI C's asctime() format

在HTTP更多细节/ 1.1 RFC 2616 。



Answer 2:

当你已经拥有的Date对象,你可以使用:

long timeInMillis = ifModifiedSince.getTime();


文章来源: If-Modified-Since Date Format