bluzi/jsonstore
:rocket: jsonstore offers a free and secured JSON-based cloud datastore for small projects
repo name | bluzi/jsonstore |
repo link | https://github.com/bluzi/jsonstore |
homepage | https://www.jsonstore.io/ |
language | JavaScript |
size (curr.) | 234 kB |
stars (curr.) | 2046 |
created | 2018-03-29 |
license | MIT License |
jsonstore.io
jsonstore.io offers a free, secured and JSON based cloud datastore for small projects. Just enter https://www.jsonstore.io/, copy the URL and start sending HTTP requests to communicate with your datastore. POST requests will save data, PUT requests modify data, DELETE requests delete data and GET requests retrieves data.
Examples
Make sure to replace the URL in the examples to your own endpoint, that can be found at https://www.jsonstore.io/.
CURL
POST
The following command will create a user in /users/1
:
curl -XPOST -H "Content-type: application/json" -d '{
"name": "jon.snow",
"age": 31
}' 'https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users/1'
GET
The following command will retrieve the user we created earlier:
curl -XGET 'https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users/1'
Querying and Sorting
To query the data, use the query parameters orderKey
, filterValue
and valueType
orderKey
: name of the key in child. For example, to order byage
use,
curl -XGET 'https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users?orderKey=age'
if
orderKey
in not present in child, that child will come in order before children withorderKey
filterValue
: value of key (given usingorderKey
), to filter the children by. For example, to get the users withage
=20
curl -XGET 'https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users?orderKey=age&filterValue=20'
filterValue
should be used in conjugation withorderBy
.
valueType
: enforcing type offilterValue
. Type offilterValue
is guessed byjsonstore
. If you want to enforce a type, sendstring
,number
orboolean
asvalueType
. For eg,
curl -XGET 'https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users?orderKey=age&filterValue=20&valueType=number'
PUT
The following command will change the age of the user to 32
:
curl -XPUT -H "Content-type: application/json" -d '32' 'https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users/1/age'
DELETE
The following command will delete the user:
curl -XDELETE 'https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users/1'
JavaScript
POST
fetch('https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users/1', {
headers: {
'Content-type': 'application/json'
},
method: 'POST',
body: { name: 'jon snow', age: 31 },
});
GET
const user = await fetch('https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users/1')
.then(function(response) {
return response.json();
})
PUT
fetch('https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users/1/age', {
headers: {
'Content-type': 'application/json'
},
method: 'PUT',
body: 32,
});
DELETE
fetch('https://www.jsonstore.io/cf024bb815a93131ce9fed91b1f9dafa43a3c557e9be66e66fd76df5c64f10fe/users/1', {
method: 'DELETE',
});
Contribution
Any type of feedback, pull request or issue is welcome.