http.rs 943 B
Newer Older
jsonrpsee::rpc_api! {
    Health {
        /// Test
        fn system_name() -> String;
Pierre Krieger's avatar
Pierre Krieger committed

        /// Test2
        fn system_name2() -> String;

    System {
        fn test_foo() -> String;
    }
Pierre Krieger's avatar
Pierre Krieger committed
fn main() {
Pierre Krieger's avatar
Pierre Krieger committed
    // Spawning a server in a background task.
    async_std::task::spawn(async move {
Pierre Krieger's avatar
Pierre Krieger committed
        let mut server1 = jsonrpsee::http_server("127.0.0.1:8000").await;
Pierre Krieger's avatar
Pierre Krieger committed

Pierre Krieger's avatar
Pierre Krieger committed
        while let Ok(request) = Health::next_request(&mut server1).await {
            match request {
Pierre Krieger's avatar
Pierre Krieger committed
                Health::SystemName { respond } => {
Pierre Krieger's avatar
Pierre Krieger committed
                    respond.ok("hello").await;
Pierre Krieger's avatar
Pierre Krieger committed
                }
Pierre Krieger's avatar
Pierre Krieger committed
                Health::SystemName2 { respond } => {
Pierre Krieger's avatar
Pierre Krieger committed
                    respond.ok("hello 2").await;
                }
Pierre Krieger's avatar
Pierre Krieger committed
            }
        }
    });
Pierre Krieger's avatar
Pierre Krieger committed
    // Client demo.
Pierre Krieger's avatar
Pierre Krieger committed
    let mut client = jsonrpsee::http_client("http://127.0.0.1:8000");
    let v = async_std::task::block_on(Health::system_name(&mut client));
    println!("{:?}", v);
Pierre Krieger's avatar
Pierre Krieger committed
}