diff options
Diffstat (limited to 'src/command/login.rs')
| -rw-r--r-- | src/command/login.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/command/login.rs b/src/command/login.rs index 4f58b77f..636ac0d3 100644 --- a/src/command/login.rs +++ b/src/command/login.rs @@ -2,7 +2,7 @@ use std::collections::HashMap; use std::fs::File; use std::io::prelude::*; -use eyre::Result; +use eyre::{eyre, Result}; use structopt::StructOpt; use crate::settings::Settings; @@ -28,8 +28,13 @@ impl Cmd { let url = format!("{}/login", settings.local.sync_address); let client = reqwest::blocking::Client::new(); + let resp = client.post(url).json(&map).send()?; + if resp.status() != reqwest::StatusCode::OK { + return Err(eyre!("invalid login details")); + } + let session = resp.json::<HashMap<String, String>>()?; let session = session["session"].clone(); |
