Kinto - シンプルなJSONストレージサーバ
最近はWeb APIのフォーマットとしてJSONを使うことが増えてきました。そして、Web APIを使っていると単純にJSONをホスティングしてくれるだけで十分といったケースも多いかと思います。 そこで使ってみたいのがKintoです。ごくシンプルなJSONストレージサーバです。
Kintoの使い方
KintoはDockerコンテナを提供しています。簡単にサーバを立てられます。
docker run -p 8888:8888 kinto/kinto-server
サーバが立ったら、後はJSONをHTTP経由でポストするだけです。Basic認証を追加することもできます。
$ echo '{"data": {"description": "Write a tutorial explaining Kinto", "status": "todo"}}' | \
> http POST https://kinto.dev.mozaws.net/v1/buckets/default/collections/tasks/records \
> -v --auth 'user:password'
POST /v1/buckets/default/collections/tasks/records HTTP/1.1
Accept: application/json
Accept-Encoding: gzip, deflate
Authorization: Basic dXNlcjpwYXNzd29yZA==
Connection: keep-alive
Content-Length: 81
Content-Type: application/json
Host: kinto.dev.mozaws.net
User-Agent: HTTPie/0.9.2
{
"data": {
"description": "Write a tutorial explaining Kinto",
"status": "todo"
}
}
HTTP/1.1 201 Created
Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff
Connection: keep-alive
Content-Length: 253
Content-Type: application/json; charset=UTF-8
Date: Sun, 20 Dec 2015 04:59:24 GMT
Server: nginx
{
"data": {
"description": "Write a tutorial explaining Kinto",
"id": "57b1f5ba-ab37-41d3-966b-2cbf1d7e48f1",
"last_modified": 1450587563732,
"status": "todo"
},
"permissions": {
"write": [
"basicauth:10ea4e5fbf849196a4fe8a9c250b737dd5ef17abbeb8f99692d62828465a9823"
]
}
}
JSONデータに対する更新、削除権限も指定することができます。さらに他のデバイスとの同期であったり、シェアする仕組みも用意されています。
KintoはPython製のオープンソース・ソフトウェア(Apache License 2.0)です。