diff options
author | Ferris Tseng <ferristseng@fastmail.fm> | 2017-10-25 22:42:29 -0400 |
---|---|---|
committer | Ferris Tseng <ferristseng@fastmail.fm> | 2017-10-25 22:42:29 -0400 |
commit | ec44a1db8ba7973386bca7fca7b51f1a5647f69e (patch) | |
tree | 4d473d4c9a60ba67fdb5e3c6970f7551966d032b /ipfs-api/examples | |
parent | 6c1d62c1541b9ceb6d88d04fcb0190182845ade7 (diff) |
add dns example
Diffstat (limited to 'ipfs-api/examples')
-rw-r--r-- | ipfs-api/examples/dns.rs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/ipfs-api/examples/dns.rs b/ipfs-api/examples/dns.rs new file mode 100644 index 0000000..20c47e7 --- /dev/null +++ b/ipfs-api/examples/dns.rs @@ -0,0 +1,30 @@ +extern crate ipfs_api; +extern crate tokio_core; + +use ipfs_api::IpfsClient; +use tokio_core::reactor::Core; + +// Creates an Ipfs client, resolves ipfs.io, and lists the contents of it. +// +fn main() { + println!("connecting to localhost:5001..."); + + let mut core = Core::new().expect("expected event loop"); + let client = IpfsClient::default(&core.handle()); + + let req = client.dns("ipfs.io", false); + let dns = core.run(req).expect("dns should resolve"); + + println!("dns resolves to ({})", &dns.path); + println!(""); + + let req = client.file_ls(&dns.path[..]); + let contents = core.run(req).expect("api should return path contents"); + + println!("found contents:"); + for directory in contents.objects.values() { + for file in directory.links.iter() { + println!("[{}] ({} bytes)", file.name, file.size); + } + } +} |