corda - 在 Corda 网络地图中 - 如何以及在哪里调用端点?
问题描述
在Corda 文档的https://docs.corda.net/network-map.html#http-network-map-protocol中。提到,启动时的每个节点都会将其签名的节点信息发布到服务器,这是通过 Rest 端点“/network-map/publish”实现的。有人可以帮助我了解 Corda 何时以及哪个部分击中它吗?那怎么称呼?我应该在哪里了解这一点?
我看到了 Corda 代码 - https://github.com/corda/corda/blob/24fa695ca0ef72fa851abc5b1630d722f32577ec/node/src/main/kotlin/net/corda/node/services/network/NetworkMapClient.kt它具有发布功能。这是照顾它的地方吗?如果是这样,这个函数是如何调用的?
解决方案
当节点启动时,它会调用AbstractNode.start()
. 在里面start()
,我们看到了这个调用:
val (keyPairs, nodeInfoAndSigned, myNotaryIdentity) = database.transaction {
updateNodeInfo(identity, identityKeyPair, publish = true)
}
然后在里面AbstractNode.updateNodeInfo()
,我们看到:
if (publish && networkMapClient != null) {
tryPublishNodeInfoAsync(nodeInfoAndSigned.signed, networkMapClient)
}
最后在里面AbstractNode.tryPublishNodeInfoAsync()
,我们看到:
networkMapClient.publish(signedNodeInfo)
这是将节点信息发布到网络地图的方法。
推荐阅读
- rust - 有什么作用??生锈吗?
- sql - 使用 NodeJS 应用程序的 Sequelize 函数在 PostgreSQL 中实现两级聚合
- asp.net - 如何正确测量 ASP.NET Core 请求持续时间?
- c# - 如何在 ASP.NET MVC 中通过预加载在 EF6 中包含导航属性的多个导航属性?
- java - Android:仅当我单击网格时才选中复选框?
- amazon-web-services - 如何导出 Scikit learn 模型以在 AWS Sagemaker 中托管(sklearn 模型工件、.pkl 文件或 .tar.gz)
- php - 将 JSON 解析为变量或 MySQL
- python-3.x - Python 3 中的滑动拼图,从哪里开始?
- c++ - 当 C++ 中的 I2C 值更改时收到通知
- python - 无法通过按钮单击将文本附加到文本字段。姜戈