4个版本
0.1.3 | 2022年7月14日 |
---|---|
0.1.2 | 2020年1月14日 |
0.1.1 | 2019年11月16日 |
0.1.0 | 2019年11月16日 |
#6 在 #abci
每月33次下载
用于 orga
25KB
155 行
abci2
低级ABCI协议服务器
此crate通过一个名为Connection
的类型提供对ABCI协议的低级访问,该类型公开了返回或接受ABCI请求或响应结构的read()
和write()
方法。
目前支持Tendermint 0.32。
用法
将此crate作为依赖项添加
[dependencies]
abci2 = "0.1"
示例
// listen for ABCI connections from Tendermint
let server = abci2::Server::listen("localhost:26658").unwrap();
// wait for Tendermint to connect (note that we will need to accept the 3
// separate connections that Tendermint makes). this function blocks until
// a connection comes in.
let connection = server.accept().unwrap();
loop {
// get an incoming request
let req = connection.read().unwrap();
// handle the request somehow
let res = process_request();
// send back the response
connection.write(res).unwrap();
}
有关更完整的示例,请参阅examples/simple.rs(您可以通过cargo run --example simple
运行它)。
重建Protobuf
如果您正在将此crate更新到针对Tendermint新版本的protobuf定义,您可以通过运行以下命令来重新生成代码:cargo run --bin codegen --features codegen
。
依赖项
~4.5MB
~88K SLoC