我正在编写一个命令行工具,它将从文本文件中删除对等项.
这是文本文件.它在代码中的引用是cfg.Bootstrap
"Bootstrap": [
{
"Address": "/ip4/162.243.139.64/tcp/5001",
"PeerID": "QmXZPT1SLcczjNSLnSCsQBWwbosKjrDRo122Ys8ajKoQXQ"
},
{
"Address": "/ip4/162.243.139.64/tcp/5001",
"PeerID": "QmXZPT1SLcczjNSLnSCsQBWwbosKjrDRo122Ys8ajKoQXA"
},
{
"Address": "/ip4/162.243.139.64/tcp/5001",
"PeerID": "QmXZPT1SLcczjNSLnSCsQBWwbosKjrDRo122Ys8ajKoQXQ"
},
{
"Address": "/ip4/162.243.139.64/tcp/5001",
"PeerID": "QmXZPT1SLcczjNSLnSCsQBWwbosKjrDRo122Ys8ajKoQXA"
}
Run Code Online (Sandbox Code Playgroud)
]
使用用户提供的PeerID和Address创建对等对象.看起来像这样
peer := config.BootstrapPeer{
Address: address,
PeerID: pID,
}
Run Code Online (Sandbox Code Playgroud)
目标是删除包含用户提供的Address和PeerID的所有对等cfg.Bootstrap
//iterate through the list of peers multiple times so that we delete all matches
for i := range cfg.Bootstrap {
//iterate through the list of peers
for i, val := range cfg.Bootstrap {
//if the user supplied PeerID and Address match …Run Code Online (Sandbox Code Playgroud) go ×1