1
0
Fork 0
forked from s3lph/matemat

Cleaner datetime API usage.

This commit is contained in:
s3lph 2018-07-14 22:55:14 +02:00
parent 87b66719e3
commit a9fc6f451b

View file

@ -10,7 +10,6 @@ from http.server import HTTPServer, BaseHTTPRequestHandler
from http.cookies import SimpleCookie
from uuid import uuid4
from datetime import datetime, timedelta
from time import localtime
import jinja2
@ -349,10 +348,10 @@ class HttpHandler(BaseHTTPRequestHandler):
# Parse the If-Modified-Since header to check whether the browser can reuse cached content
datestr: str = self.headers.get('If-Modified-Since', 'Thu, 01 Jan 1970 00:00:00 GMT')
maxage: datetime = datetime.strptime(datestr, '%a, %d %b %Y %H:%M:%S %Z')
# File modification time in LOCAL time
# Get file modification time
filestat: int = int(os.path.getmtime(filepath))
# Create timezone-unaware datetime object and subtract UTC offset
fileage: datetime = datetime.fromtimestamp(filestat) - timedelta(seconds=localtime().tm_gmtoff)
# Create UTC datetime object from mtime
fileage: datetime = datetime.utcfromtimestamp(filestat)
# If the file has not been replaced by a newer version than requested by the client, send a 304 response
if fileage <= maxage: