initial version that works as proxy for hardcoded link

This commit is contained in:
2021-08-24 16:07:22 +02:00
commit d295e50067
4 changed files with 2287 additions and 0 deletions

2
.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
/target
.vscode

2253
Cargo.lock generated Normal file

File diff suppressed because it is too large Load Diff

10
Cargo.toml Normal file
View File

@@ -0,0 +1,10 @@
[package]
name = "ics-proxy"
version = "0.1.0"
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
actix-web = "3"
reqwest = { version = "0.11", features = ["blocking"] }

22
src/main.rs Normal file
View File

@@ -0,0 +1,22 @@
use actix_web::{get, App, HttpResponse, HttpServer, Responder};
#[get("/events.ics")]
async fn hello() -> impl Responder {
let res = match reqwest::blocking::get("https://cloud.timeedit.net/uu/web/schema/ri6QX6089X8061QQ88Z4758Z08y37424838828461554904Y684XX09894Q8721784ZnX6503.ics") {
Ok(r) => match r.text() {
Ok(res) => res,
Err(_) => "".to_string(),
},
Err(_) => "".to_string(),
};
HttpResponse::Ok().content_type("text/calendar").body(res)
}
#[actix_web::main]
async fn main() -> std::io::Result<()> {
HttpServer::new(|| App::new().service(hello))
.bind("127.0.0.1:8080")?
.run()
.await
}