Skip to main content

Zope3 JSON base libraries

Project description

This package provides basic JSON components like JSON reader and writer utilities and a JSON-RPC client proxy including the transport implementation for Zope3.

Detailed Documentation

README

We can use the JSONReader and JSONWriter if we need to convert a data structure to or from JSON syntax – in other words a EcmaScript mapping object. Let’s check the utilities:

>>> import zope.component
>>> from z3c.json import interfaces
>>> from z3c.json import testing
>>> testing.setUpJSONConverter()

JSONWriter Utility

>>> jsonWriter = zope.component.getUtility(interfaces.IJSONWriter)
>>> jsonWriter
<z3c.json.converter.JSONWriter object at ...>

Read some data:

>>> input = {u'a': ['fred', 7],
...          u'b': ['mary', 1.234]}
>>> jsonStr = jsonWriter.write(input)
>>> jsonStr
u'{"a":["fred",7],"b":["mary",1.234]}'

JSONReader Utility

>>> jsonReader = zope.component.getUtility(interfaces.IJSONReader)
>>> jsonReader
<z3c.json.converter.JSONReader object at ...>

Convert the data back to python:

>>> output = jsonReader.read(jsonStr)
>>> output
{u'a': [u'fred', 7], u'b': [u'mary', 1.234]}
>>> input == output
True

CHANGES

0.5.5 (2013-02-26)

  • More informative error message when the server returns an error.

0.5.4 (2010-08-30)

  • Fix my previous SafeBasicAuthTransport refactoring. Tests are still missing for SSL transports.

0.5.3 (2010-08-29)

  • Refactor BasicAuthTransport to reuse as much as possible from Transport that enables to do a simple SafeBasicAuthTransport

0.5.2 (2009-02-24)

  • raise ValueError for mixed parameters on any JSON-RPC version
  • do not test for response len if response is an int
  • fixed possible unicode error in case of response error
  • made all tests pass (JSONWriter inserts no whitespace)
  • added parse_response_headers to allow subclasses to handle header values if needed.
  • Implemented JSON-RPC 2.0 specification. Use JSON-RPC 2.0 version as default. Optional the version 1.0 and 1.1 can be set. See JSON-RPC 2.0 specification for more information.

0.5.1 (2008-01-24)

  • Improved meta-data.

0.5.0 (2008-01-21)

  • Initial Release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
z3c.json-0.5.5.zip (32.0 kB) Copy SHA256 hash SHA256 Source None Feb 26, 2013

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page