diff options
| -rw-r--r-- | src/client.rs | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/src/client.rs b/src/client.rs index aaf42de..b0cfa42 100644 --- a/src/client.rs +++ b/src/client.rs @@ -1,20 +1,39 @@ +use authz::AllowRequest; +use authz::ability_client::AbilityClient; use hello_world::HelloRequest; use hello_world::greeter_client::GreeterClient; +pub mod authz { + tonic::include_proto!("authz.rpc"); +} + pub mod hello_world { tonic::include_proto!("helloworld"); } #[tokio::main] async fn main() -> Result<(), Box<dyn std::error::Error>> { - let mut client = GreeterClient::connect("http://[::1]:50051").await?; + { + let mut client = GreeterClient::connect("http://[::1]:50051").await?; + let request = tonic::Request::new(HelloRequest { + name: "Tonic".into(), + }); + + let response = client.say_hello(request).await?; + println!("RESPONSE={:?}", response); + } - let request = tonic::Request::new(HelloRequest { - name: "Tonic".into(), - }); + { + let request = tonic::Request::new(AllowRequest { + subject: "gid://example/User/1".into(), + permission: "gid://example/Permission/1".into(), + resource: "gid://example/Project/1".into(), + }); - let response = client.say_hello(request).await?; - println!("RESPONSE={:?}", response); + let mut client = AbilityClient::connect("http://[::1]:50051").await?; + let response = client.allowed(request).await?; + println!("RESPONSE={:?}", response); + } Ok(()) } |
