• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ipfs-shipyard/js-ipfs-level: Leveldown over IPFS

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

ipfs-shipyard/js-ipfs-level

开源软件地址:

https://github.com/ipfs-shipyard/js-ipfs-level

开源编程语言:

JavaScript 100.0%

开源软件介绍:

ipfs-level

Leveldown over IPFS

made by Protocol Labs Freenode

Build Status

Install

$ npm install ipfs-level --save

Import

const IPFSLevel = require('ipfs-level')

API

IPFSLevel(partition, options)

Returns a new IPFSLevel instance. This object obeys the LevelDown interface.

Arguments:

  • options (object, defaults to this): with the following keys:
    • ipfsOptions (object). IPFS options object.
    • log (LevelDown-compatible database that stores the log)
    • ipfs (IPFS object): an IPFS object instance. If you already can provide an IPFS object, pass it in here.
    • retainLog (boolean, defaults to false): whether or not the log should be retained. Besides wasting storage space, setting this option to true` provides no direct benefit, except if you want to somehow explore the log database.

Default arguments

You can create a constructor that curries some default arguments by using IPFSLevel.defaults(options) like this:

const ipfsLevel = IPFSLevel.defaults({
  log: someLevelDownLogDatabase
})

Events

An IPFSLevel instance emits the following events

emit("started")

When started.

emit("change", change)

Emitted whenever there is a change in the database. The event payload is a change object, which has the following properties:

  • type (string: "put" or "del")
  • key (string): the key affected by this change
  • value (any): the new value for the mentioned key

emit("new head", cid)

Whenever the log has a new head. The payload, cid is a content identifier (internal to IPFS)

With Levelup

This default options feature may be useful if you want to pass a constructor into which you'll have no saying about the options, like on the Levelup constructor:

const LevelUp = require('levelup')
const Memdown = require('memdown') // any leveldown db will do for caching log entries
const IPFSLevel = require('ipfs-level').defaults({
  log: Memdown('some-partition-name') // log database should be scoped to partition
})

const db = LevelUp({ db: IPFSLevel })
// now you have a levelup db you can use

Test and debug

This package uses debug, so you can activate debug messages by setting the environment variable DEBUG to ipfs-level:*

License

MIT

Contribute

Feel free to join in. All welcome. Open an issue!

This repository falls under the IPFS Code of Conduct.

License

MIT




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap