forked from orbit-oss/flask
Correctly encode aware, non-UTC datetime objects
http_date() requires timetuple in UTC, but JSONEncoder.default() was passing a local timetuple instead.
This commit is contained in:
parent
d75d83defd
commit
d41e2e6a5d
2 changed files with 5 additions and 1 deletions
|
|
@ -1,7 +1,7 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
import io
|
||||
import uuid
|
||||
from datetime import date
|
||||
from datetime import date, datetime
|
||||
from flask.globals import current_app, request
|
||||
from flask._compat import text_type, PY2
|
||||
|
||||
|
|
@ -62,6 +62,8 @@ class JSONEncoder(_json.JSONEncoder):
|
|||
return list(iterable)
|
||||
return JSONEncoder.default(self, o)
|
||||
"""
|
||||
if isinstance(o, datetime):
|
||||
return http_date(o.utctimetuple())
|
||||
if isinstance(o, date):
|
||||
return http_date(o.timetuple())
|
||||
if isinstance(o, uuid.UUID):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue