我正在处理一个返回过期标头的服务。该服务将跨不同时区工作。所以我们需要一种方法来返回格林尼治时间以外的其他时区。
我知道http头必须遵循RFC1123标准的日期格式。所以服务返回日期如下-
2019年3月1日星期五格林尼治时间15:00
我需要的是返回以下格式的日期。
2019年3月1日星期五15:00:00 +0530
这是RFC1123日期格式的有效日期吗?
发布于 2019-02-28 15:51:11
我想您正在使用旧的和过时的RFC 2616作为参考。请记住,这类文件如今已不再适用,已被下列文件所取代:
根据RFC 7231,HTTP日期必须用格林尼治标准时间表示。因此,用UTC的偏移来表示日期似乎是无效的。
5.3。过期
Expires标头字段给出了响应被认为过时的日期/时间。..。Expires值是一个HTTP-date时间戳,在RFC 7231第7.1.1.1节中定义。 date=HTTP-日期 例如 届满日期:清华,1994年12月1日16:00格林尼治时间
现在请参阅RFC 7231中的以下引号:
7.1.1.1.日期/时间格式 在1995年之前,服务器通常使用三种不同的格式来传递时间戳。为了与旧实现兼容,这里定义了所有这三种实现。首选格式是因特网消息格式RFC5322所使用的日期和时间规范的固定长度和单区域子集。 HTTP-date =IMF-固定日期/ 首选格式的一个示例是 日,1994年11月6日08:49:37格林尼治标准时间;IMF-固定日期 这两种过时格式的示例如下 11月6日星期日 在header字段中解析时间戳值的收件人必须接受所有三种
HTTP-date格式。当发件人生成包含定义为HTTP-date的一个或多个时间戳的标头字段时,发件人必须以IMF-fixdate格式生成这些时间戳。 HTTP值将时间表示为协调世界时间(UTC)的一个实例.前两种格式使用格林威治标准时间(格林威治标准时间)的三个字母缩写表示UTC,格林威治标准时间是UTC名称的前身;asctime格式的值假定为UTC。..。
https://stackoverflow.com/questions/54927845
复制相似问题