Put all URLs under /api/

This commit is contained in:
Bill Thiede 2024-07-05 20:00:52 -07:00
parent 714e73aeb1
commit 5fc272054c
6 changed files with 26 additions and 18 deletions

View File

@ -231,7 +231,7 @@ async fn main() -> Result<(), Box<dyn Error>> {
let _ = rocket::build()
.mount(
"/",
shared::urls::MOUNT_POINT,
routes![
original,
refresh,

View File

@ -337,7 +337,7 @@ impl QueryRoot {
.headers
.get_first_value("date")
.and_then(|d| mailparse::dateparse(&d).ok());
let cid_prefix = format!("/cid/{id}/");
let cid_prefix = shared::urls::cid_prefix(None, &id);
let body = match extract_body(&m, &id)? {
Body::PlainText(PlainText { text, content_tree }) => {
let text = if text.len() > MAX_RAW_MESSAGE_SIZE {

View File

@ -12,3 +12,24 @@ pub struct SearchResult {
#[derive(Serialize, Deserialize, Debug)]
pub struct Message {}
pub mod urls {
pub const MOUNT_POINT: &'static str = "/api";
pub fn cid_prefix(host: Option<&str>, cid: &str) -> String {
if let Some(host) = host {
format!("//{host}/api/cid/{cid}/")
} else {
format!("/api/cid/{cid}/")
}
}
pub fn download_attachment(host: Option<&str>, id: &str, idx: &str, filename: &str) -> String {
if let Some(host) = host {
format!(
"//{host}/api/download/attachment/{}/{}/{}",
id, idx, filename
)
} else {
format!("/api/download/attachment/{}/{}/{}", id, idx, filename)
}
}
}

View File

@ -7,20 +7,7 @@ address = "0.0.0.0"
port = 6758
[[proxy]]
backend = "http://localhost:9345/"
rewrite= "/api/"
[[proxy]]
backend="http://localhost:9345/cid"
[[proxy]]
backend="http://localhost:9345/original"
[[proxy]]
backend="http://localhost:9345/graphiql"
[[proxy]]
backend="http://localhost:9345/graphql"
[[proxy]]
backend="http://localhost:9345/download"
[[proxy]]
backend="http://localhost:9345/view"
backend = "http://localhost:9345/api/"
[[hooks]]
stage = "pre_build"

View File

@ -51,7 +51,7 @@ where
{
use web_sys::RequestMode;
Request::post("/graphql/")
Request::post("/api/graphql/")
.mode(RequestMode::Cors)
.json(&body)?
.send()

View File

@ -732,7 +732,7 @@ fn message_render(msg: &ShowThreadQueryThreadMessages, open: bool) -> Node<Msg>
let default = "UNKNOWN_FILE".to_string();
let filename = a.filename.as_ref().unwrap_or(&default);
let host = seed::window().location().host().expect("couldn't get host");
let url = format!("//{host}/download/attachment/{}/{}/{}", a.id,a.idx, filename);
let url = shared::urls::download_attachment(Some(&host), &a.id, &a.idx, filename);
let mut fmtr = Formatter::new();
fmtr.with_separator(" ");
fmtr.with_scales(Scales::Binary());