inth-oauth2/examples/imgur.rs

35 lines
972 B
Rust
Raw Normal View History

2017-06-05 00:05:30 +00:00
extern crate hyper;
extern crate hyper_native_tls;
2015-12-22 04:36:04 +00:00
extern crate inth_oauth2;
use std::io;
2017-06-05 00:05:30 +00:00
use hyper_native_tls::NativeTlsClient;
use hyper::net::HttpsConnector;
2015-12-26 01:23:48 +00:00
use inth_oauth2::Client;
2015-12-22 04:36:04 +00:00
use inth_oauth2::provider::Imgur;
fn main() {
2017-06-05 00:05:30 +00:00
let tls = NativeTlsClient::new().unwrap();
let connector = HttpsConnector::new(tls);
let https = hyper::Client::with_connector(connector);
2015-12-22 04:36:04 +00:00
let client = Client::<Imgur>::new(
2016-01-29 02:54:14 +00:00
String::from("505c8ca804230e0"),
String::from("c898d8cf28404102752b2119a3a1c6aab49899c8"),
Some(String::from("https://cmcenroe.me/oauth2-paste/"))
2015-12-22 04:36:04 +00:00
);
let auth_uri = client.auth_uri(None, None).unwrap();
println!("{}", auth_uri);
let mut code = String::new();
io::stdin().read_line(&mut code).unwrap();
2017-06-05 00:05:30 +00:00
let token = client.request_token(&https, code.trim()).unwrap();
println!("{:?}", token);
2017-06-05 00:05:30 +00:00
let token = client.refresh_token(&https, token, None).unwrap();
println!("{:?}", token);
2015-12-22 04:36:04 +00:00
}