我正在将BYFN(默认)作为网络运行,这是我的chaincode
用于测试目的
Chaincode link我的收藏集配置为Config File Link。
现在,让我解释一下这个问题。当我从授权对等方查询时,ORG1的任何对等方都会给我正确结果
{
"public_data": {
"docType": "car",
"name": "Honda Amaze",
"color": "blue",
"size": 35,
"owner": "tom"
},
"privatedata": {
"docType": "car",
"name": "Honda Amaze",
"owner_address": "Vill anyari url alinagar Moradabad"
}
}
但是,当我从未经授权的对等方查询时,意味着组织2的任何对等方都会发出错误消息,表明我们无法访问数据。我得到的回应是
{
"public_data": {
"docType": "car",
"name": "Honda Amaze",
"color": "blue",
"size": 35,
"owner": "tom"
},
"privatedata": {
"docType": "",
"name": "",
"owner_address": ""
}
}
您可以看到不存在私有数据。 如果我运行marbels私人数据,这会给我来自未经授权的同伴的错误
{“错误”:“无法获取大理石1的私人详细信息:GET_STATE失败: 交易编号: b04adebbf165ddc90b4ab897171e1daa7d360079ac18e65fa15d84ddfebfae90: 与私有哈希匹配的私有数据不可用。上市 哈希版本=&version.Height {BlockNum:0x6,TxNum:0x0},私有数据 版本=(* version.Height)(nil)“}”
没有Marbels
私有示例,它们不是从简单分类帐中获取数据,但在我的chaincode
中,它们是从普通分类帐和私有数据中获取数据。
有很多帮助。
谢谢。
答案 0 :(得分:2)
我希望区别只是与链码中的错误处理代码有关。您需要处理GetPrivateData()返回的错误。