代码之家  ›  专栏  ›  技术社区  ›  Europa

像这样的REST API的Java日期:Mon,01月1月1990时00分GMT

  •  0
  • Europa  · 技术社区  · 6 年前

    在我的Java代码中,我有:

    exchange.getOut().setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
    exchange.getOut().setHeader("Pragma", "no-cache");
    exchange.getOut().setHeader("Expires", "Mon, 01 Jan 1990 00:00:00 GMT");
    

    但是,及时设置过期日期是否正确?是不是应该像现在加一个小时之类的?

    如何正确获取日期格式(1990年1月1日星期一00:00:00 GMT)?

    1 回复  |  直到 6 年前
        1
  •  0
  •   bratkartoffel    6 年前

    指定 Expire -过去的头球。从代码片段的其他头部可以看到,客户端根本不应该缓存该页。

    三个给定的头都意味着相同的(冗余的),但是有些在旧的http规范中使用(例如。 https://stackoverflow.com/a/10314289/1164913 , https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Expires )

    如果要启用资源缓存,则需要RFC-850日期格式。( https://tools.ietf.org/html/rfc7231#section-7.1.1.1 参考文献 https://tools.ietf.org/html/rfc5322#section-3.3 ,源于 https://tools.ietf.org/html/rfc850#section-2.1.4 )