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

MIT 协议

25KB
155

abci2

低级ABCI协议服务器

Crate API

此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