问题描述
我已经完成/尝试过的事情:
- 更改了其他一些RPC摘要,并使用
make geth
重建了节点-然后在我请求rpc.discover
时出现。 - 使用一种方法添加了新的
API
结构,然后对其进行了初始化,并将其添加到文件return append(apis,[]rpc.API{ <here> }
中的eth/backend.go
中。 - 在
methods
的{{1}}字段中添加了新方法。
预期结果:
该方法出现在internal/openrpc/openrpc_schema.go
中。
实际结果:
构建后-没有任何变化。新的RPC方法未显示在rpc.discover
上,并且无法访问它(返回下一条错误消息rpc.discover
)。
我已添加到the method example_testCall does not exist/is not available
的代码:
eth/backend.go
// In append for RPCs:
{
Namespace: "example",Version: "1.0",Service: &PublicExampleAPI{},Public: true,}
// PublicExampleAPI:
type PublicExampleAPI struct {}
// TestCall ...
func (api *PublicExampleAPI) TestCall(ctx context.Context) string {
return "It works!"
}
的代码:
openrpc
存储库和提交:https://github.com/etclabscore/core-geth/tree/a3b5c762376c8ceec388d238d293c9ef76bd6549
无法使其正常工作,我想我错过了一些东西,应该添加一些其他行使其正常工作。任何帮助表示高度赞赏!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)