0

我正在使用 Apache Client 发送 HTTP/1.0 请求并在 java 中接收响应。

现在我遇到了问题:响应的标题包含属性“日期”,它可以是这三种格式:

  • Sun, 06 Nov 1994 08:49:37 GMT// RFC 822,由 RFC 1123 更新
  • Sunday, 06-Nov-94 08:49:37 GMT // RFC 850,被 RFC 1036 废弃
  • Sun Nov 6 08:49:37 1994// ANSI C 的 asctime() 格式

我的问题是我可以SimpleDateFormat用来解析这三种格式中的一种,但我找不到一个好的解决方案来解析这三种格式中的任何/全部。

(但是 HTTP/1.0 协议需要支持所有这些格式,我只能支持其中一种)

确实感谢

4

2 回答 2

2

如果您不能将时间(以毫秒为单位)放入服务器响应标头的日期字段(不符合 http 规范),那么我认为唯一的方法是:

创建三种格式,然后使用每种格式解析日期值,并返回或使用未引发解析异常的值。

希望能帮助到你。

于 2014-11-06T22:07:43.213 回答
1

Use the DateUtil provided for the purpose.

于 2014-11-06T22:21:19.837 回答