本文整理汇总了Python中aspen.Response.headers['Last-Modified']方法的典型用法代码示例。如果您正苦于以下问题:Python Response.headers['Last-Modified']方法的具体用法?Python Response.headers['Last-Modified']怎么用?Python Response.headers['Last-Modified']使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类aspen.Response
的用法示例。
在下文中一共展示了Response.headers['Last-Modified']方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: inbound
# 需要导入模块: from aspen import Response [as 别名]
# 或者: from aspen.Response import headers['Last-Modified'] [as 别名]
def inbound(request):
"""Try to serve a 304 for resources under assets/.
"""
uri = request.line.uri
if not uri.startswith('/assets/'):
# Only apply to the assets/ directory.
return request
if version_is_dash(request):
# Special-case a version of '-' to never 304/404 here.
return request
if not version_is_available(request):
# Don't serve one version of a file as if it were another.
raise Response(404)
ims = request.headers.get('If-Modified-Since')
if not ims:
# This client doesn't care about when the file was modified.
return request
if request.fs.endswith('.spt'):
# This is a requests for a dynamic resource. Perhaps in the future
# we'll delegate to such resources to compute a sensible Last-Modified
# or E-Tag, but for now we punt. This is okay, because we expect to
# put our dynamic assets behind a CDN in production.
return request
try:
ims = timegm(parsedate(ims))
except:
# Malformed If-Modified-Since header. Proceed with the request.
return request
last_modified = get_last_modified(request.fs)
if ims < last_modified:
# The file has been modified since. Serve the whole thing.
return request
# Huzzah!
# =======
# We can serve a 304! :D
response = Response(304)
response.headers['Last-Modified'] = format_date_time(last_modified)
response.headers['Cache-Control'] = 'no-cache'
raise response