Skip to main content

Package to serialize python dictionaries/JSON into URI GET parameters, and reverse.

Project description

JSONURI-PY
==============

This package helps you convert Python dictionaries into an HTTP GET request parameters, and vice-versa.

An example of a practical application would be to send JSON data over HTTP GET, e.g. to a static resource small.png, and harvest the data from access logs instead of running real-time data collection.

**Note**: You should avoid send sensitive information using this mechanism, or at least ensure you send your data over SSL.

Equivalent libs/packages:
==========================

| Language | Repo |
|----------|-------------------------------------|
| JavaScript | https://github.com/guidj/jsonuri-js |


Examples:
=============

Serialization:
---------------

```python
>>> import json
>>> import urllib.parse
>>> from jsonuri import jsonuri
>>> jsonuri.serialize(json.loads('{"age": "31", "name": "John", "account": {"id": 127, "regions": ["US", "SG"]}}'))
'account%3Aregions%5B0%5D%3DUS%26account%3Aregions%5B1%5D%3DSG%26account%3Aid%3D127&age%3D31&name%3DJohn'
>>> jsonuri.serialize(json.loads('{"age": "31", "name": "John", "account": {"id": 127, "regions": ["US", "SG"]}}'), encode=False)
'account:regions[0]=US&account:regions[1]=SG&account:id=127&age=31&name=John'
```

Desirialization
----------------

```python
>>> string = "account:regions[0]=US&account:regions[1]=SG&account:id=127&age=31&name=John"
>>> jsonuri.deserialize(string)
{'account': {'regions': ['US', 'SG'], 'id': '127'}, 'age': '31', 'name': 'John'}
```

Notes
======

The package was not designed to process HTML form data, specifically multi-value variables, i.e. from select attributes. Though if you convert the data to a JSON/JavaScript object, that should work.

Project details


Download files

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

Source Distribution

jsonuri-0.1.25.tar.gz (8.5 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page