1
我正在使用Tarpc。我可以连接到Tarpc RPC服务而不使用任何东西,但是使用服务器的地址吗?
客户
let (_, mut auth_reactor) = auth::spawn_server(auth_server_address);
let auth_client: auth::FutureClient = auth_reactor
.run(auth::FutureClient::connect(
auth_server_address,
client::Options::default(),
))
.unwrap();
auth_reactor
.run(
auth_client
.authme(byte_vector_auth.clone())
.map_err(|e| println!("{}", e))
.and_then(|i| {
println!("{:?}", i);
Ok(())
}),
)
.unwrap();
服务器
pub fn spawn_server(address: SocketAddr) -> (server::Handle, reactor::Core) {
let reactor = reactor::Core::new().unwrap();
client::Options::default().handle(reactor.handle());
let (auth_handler, server) = AuthServer
.listen(address, &reactor.handle(), server::Options::default())
.unwrap();
reactor.handle().spawn(server);
return (auth_handler, reactor);
}
我返回反应器,因为我需要它的客户。