diff options
| author | Kevin J Hoerr <kjhoerr@protonmail.com> | 2018-08-27 23:22:53 -0400 |
|---|---|---|
| committer | Kevin Hoerr <kjhoerr@submelon.tech> | 2018-08-31 23:24:45 -0400 |
| commit | 47d13a8540d0d093a73a81265ede1154ec083911 (patch) | |
| tree | f8e31a6bea83a13ede87b9a42a91392cb9355623 /src/routes/mod.rs | |
| parent | 396f302937cc83c8cb50e4bba64b67f4b76b7c13 (diff) | |
| download | august-offensive-47d13a8540d0d093a73a81265ede1154ec083911.tar.gz august-offensive-47d13a8540d0d093a73a81265ede1154ec083911.tar.bz2 august-offensive-47d13a8540d0d093a73a81265ede1154ec083911.zip | |
Replace error_chain with failure; return JSON object for callback api
Diffstat (limited to 'src/routes/mod.rs')
| -rw-r--r-- | src/routes/mod.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/routes/mod.rs b/src/routes/mod.rs new file mode 100644 index 0000000..3d11a8b --- /dev/null +++ b/src/routes/mod.rs @@ -0,0 +1,26 @@ +use actix_web::{HttpRequest, Json, Result, Responder}; +use std::ops::Deref; + +pub mod messages; +use messages::*; + +pub fn not_understood(_req: &HttpRequest) -> impl Responder { + "Hello, world!" +} + +pub fn callback(req: &HttpRequest) -> Result<Json<Callback>> { + let path = String::from(req.path()); + let request = (*(req.query().deref())).clone(); + + Ok(Json(Callback { + path: destruct_path(path), + request: request, + })) +} + +fn destruct_path(path: String) -> Vec<String> { + path.split_terminator("/") + .skip(1) + .map(|s| String::from(s)) + .collect::<Vec<String>>() +}
\ No newline at end of file |
