##// END OF EJS Templates
rethrow upstream HTTP errors...
rethrow upstream HTTP errors If the proxied request to the CDN fails, rethrow the error. We were ignoring errors and sending an empty body.

File last commit:

r4609:a661b7c0
r20487:6404bf4e
Show More
nbjson.py
54 lines | 1.5 KiB | text/x-python | PythonLexer
Brian E. Granger
More review changes....
r4609 """Read and write notebooks in JSON format.
Authors:
* Brian Granger
"""
#-----------------------------------------------------------------------------
# Copyright (C) 2008-2011 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
Brian E. Granger
Full versioning added to nbformat.
r4406
from base64 import encodestring
from .rwbase import NotebookReader, NotebookWriter
from .nbbase import from_dict
import json
Brian E. Granger
More review changes....
r4609 #-----------------------------------------------------------------------------
# Code
#-----------------------------------------------------------------------------
Brian E. Granger
Full versioning added to nbformat.
r4406
class JSONReader(NotebookReader):
def reads(self, s, **kwargs):
nb = json.loads(s, **kwargs)
return self.to_notebook(nb, **kwargs)
def to_notebook(self, d, **kwargs):
"""Convert from a raw JSON dict to a nested NotebookNode structure."""
return from_dict(d)
class JSONWriter(NotebookWriter):
def writes(self, nb, **kwargs):
kwargs['indent'] = 4
return json.dumps(nb, **kwargs)
_reader = JSONReader()
_writer = JSONWriter()
reads = _reader.reads
read = _reader.read
to_notebook = _reader.to_notebook
write = _writer.write
writes = _writer.writes