#client #sonic #api-bindings

sonic_client

sonic搜索客户端库

3个版本

0.1.2 2019年4月9日
0.1.1 2019年4月9日
0.1.0 2019年4月9日

1775#client

每月 21 次下载

MPL-2.0 许可证

29KB
666 代码行(不含注释)

sonic_client

Rust编写的sonic客户端库,sonic是一个基于Rust的搜索平台。

注意!

此库正在开发中,API可能会非常快速地更改。

用法

sonic_client = "0.1.1"
use sonic_client::SearchChan;

let mut s = SearchChan::new("127.0.0.1", 1491, "haha").expect("Connection error");
let handle = s.read();
assert_eq!("CONNECTED <sonic-server v1.1.8>\r\n", s.connect().unwrap());
thread::sleep(time::Duration::from_secs(4));
let r1 = s
    .query("helpdesk", "user:0dcde3a6", "gdpr", Some(50), None)
    .unwrap();
let r2 = s.ping().unwrap();
let r3 = s.quit().unwrap();
assert_eq!("EVENT", r1[0]);
assert_eq!("PONG\r\n", r2.recv().unwrap());
assert_eq!("ENDED quit\r\n", r3.recv().unwrap());
handle.join().expect("Failed to wait process");

路线图

  • 尊重20000的缓冲区限制
  • 更好的错误解析
  • 池化
  • 更好的调试模式消息

依赖项

~0.6–1MB
~14K SLoC