jsonを無料で読み書きできるサービス、便利そう!
ということで試してみました。
導入
console
% npm i -S jsonbox-node
BOX_IDを準備しておく
https://jsonbox.io/ にアクセスして、https://jsonbox.io/
より後ろの値をコピーしておきます。
これも生成できたら良いのに…
実装
demo.js
const {JsonBox} = require('jsonbox-node')
const BOX_ID = 'box_id'; // コピーしたBOX_ID
(async () => {
const jbn = await new JsonBox()
// レコード作成
const get = await jbn.create({name: 'Pickles', age: 18}, BOX_ID)
console.table(get)
// 更新
await jbn.update({age: 43}, BOX_ID, get._id)
// 全レコード取得
const records = await jbn.read(BOX_ID)
// 検索
// const records = await jbn.read(BOX_ID, {id: get.id})
console.table(records[0])
// 1リクエストで全件削除
const recordIds = await Promise.all(records.map(async el => await el._id))
await jbn.deleteMany(BOX_ID, recordIds)
// 1件ずつ削除
// await Promise.all(records.map(async (el) => await jbn.delete(BOX_ID, el._id)))
})()
実行結果
更新時に name
を指定しなかったから消えてしまった…
console
% node demo.js
┌────────────┬────────────────────────────┐
│ (index) │ Values │
├────────────┼────────────────────────────┤
│ _id │ '5d84848d9d1f330017f8f2f3' │
│ name │ 'Pickles' │
│ age │ 18 │
│ _createdOn │ '2019-09-20T07:49:33.338Z' │
└────────────┴────────────────────────────┘
┌────────────┬────────────────────────────┐
│ (index) │ Values │
├────────────┼────────────────────────────┤
│ _id │ '5d84848d9d1f330017f8f2f3' │
│ age │ 43 │
│ _createdOn │ '2019-09-20T07:49:33.338Z' │
│ _updatedOn │ '2019-09-20T07:49:33.835Z' │
└────────────┴────────────────────────────┘
雑感
検索とか細かくできる必要ないと思うので、試した範囲でも結構遊べる印象です。