9 releases
0.2.0 | Mar 21, 2024 |
---|---|
0.1.1 | Jan 27, 2024 |
0.0.6 | Jan 9, 2024 |
#2195 in Network programming
406 downloads per month
Used in tcp-server
130KB
1.5K
SLoC
Tcp-Client
Read this in other languages: English, 简体中文.
Description
Convenient client-side TCP service. Also see tcp-server for server-side.
Based on tcp-handler.
With complete API document.
Usage
Add this to your Cargo.toml
:
[dependencies]
tcp-client = "~0.2"
Example
use tcp_client::define_client;
use tcp_client::errors::Result;
define_client!(pub CommonMyClient, MyClient, "MyTcpApplication");
impl MyClient {
// define your method here.
// example:
async fn my_method(&mut self) -> Result<()> {
self.check_func("my_method").await?;
// ...
Ok(())
}
}
#[tokio::main]
async fn main() {
let mut client = MyClient::connect("127.0.0.1:1234").await.unwrap();
// use client.
// example:
client.my_method().await.unwrap();
}
Version map
Versions map to tcp-server with the same protocol. (Recommended for use in conjunction, otherwise unexpected bugs may occur.)
client version | server version |
---|---|
>=0.2.0 | >=0.3.0 |
<0.2.0, >=0.1.0 | <0.3.0 >=0.2.0 |
<0.1.0 | <0.2.0 |
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Dependencies
~3–13MB
~157K SLoC