This document is for Kombu's development version, which can be significantly different from previous releases. Get the stable docs here: 4.1.

JSON Utilities - kombu.utils.json

JSON Serialization Utilities.

class kombu.utils.json.DjangoPromise[source]

Dummy object.

class kombu.utils.json.JSONEncoder(skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, encoding='utf-8', default=None)[source]

Kombu custom json encoder.

default(o, dates=(<type 'datetime.datetime'>, <type 'datetime.date'>), times=(<type 'datetime.time'>, ), textual=(<class 'decimal.Decimal'>, <class 'uuid.UUID'>, <class 'kombu.utils.json.DjangoPromise'>), isinstance=<built-in function isinstance>, datetime=<type 'datetime.datetime'>, text_t=<type 'unicode'>)[source]

Implement this method in a subclass such that it returns a serializable object for o, or calls the base implementation (to raise a TypeError).

For example, to support arbitrary iterators, you could implement default like this:

def default(self, o):
    try:
        iterable = iter(o)
    except TypeError:
        pass
    else:
        return list(iterable)
    # Let the base class default method raise the TypeError
    return JSONEncoder.default(self, o)
kombu.utils.json.dumps(s, _dumps=<function dumps>, cls=None, default_kwargs={}, **kwargs)[source]

Serialize object to json string.

kombu.utils.json.loads(s, _loads=<function loads>, decode_bytes=False)[source]

Deserialize json from string.