我正在尝试将orbit-db与IPFS一起使用,并且正在浏览OrbitDB的官方文档。ATM,我只是在尝试创建一个数据库(特别是键值存储(,我现在有以下代码
const IPFS = require('ipfs')
const OrbitDB = require('orbit-db')
createDb = async() => {
try {
const ipfsOptions = {
config: {
my-config-options
},
EXPERIMENTAL: {
pubsub: true
}
}
const ipfs = await IPFS.create(ipfsOptions)
const orbitdb = await OrbitDB.createInstance(ipfs)
const db = await orbitdb.create('test', 'keyvalue', {
overwrite: false,
replicate: true,
accessController: {
admin: ['*'],
write: ['*']
}
})
console.log(db)
await db.put('hello', { name: 'world' })
console.log(db.all)
} catch (error) {
console.trace(error)
}
}
但是无论我尝试什么,我都会收到相同的错误
Trace: Error: Could not append entry, key "..." is not allowed to write to the log
因此,任何帮助将不胜感激。如果缺少任何信息,也请发表评论,我会根据要求添加它
我认为您的accessController
存在一个小问题.admin
属性的存在表示您希望使用如下所示的orbitdb
类型:
accessController: {
type: 'orbitdb',
admin: ['*'],
write: ['*']
}
否则,如果您希望使用默认ipfs
类型,请删除 admin 属性,如下所示:
accessController: {
type: 'ipfs',
write: ['*']
}