Parse vmess when not shared via base64

This commit is contained in:
Keivan-sf
2025-07-26 22:19:02 +03:30
parent 82be554317
commit cfe3c2ed53
6 changed files with 96 additions and 30 deletions

View File

@@ -59,33 +59,3 @@ fn parse_vless_address(raw_data: &str) -> models::VlessAddress {
port: parsed.port().unwrap().as_u16(),
};
}
fn parse_vless_query(raw_query: &str) -> models::VlessQuery {
let query: Vec<(&str, &str)> = querystring::querify(raw_query);
let a = models::VlessQuery {
alpn: url_decode(get_parameter_value(&query, "alpn")),
path: url_decode(get_parameter_value(&query, "path")),
authority: url_decode(get_parameter_value(&query, "authority")),
pbk: url_decode(get_parameter_value(&query, "pbk")),
security: get_parameter_value(&query, "security"),
sid: url_decode(get_parameter_value(&query, "sid")),
flow: get_parameter_value(&query, "flow"),
sni: get_parameter_value(&query, "sni"),
fp: url_decode(get_parameter_value(&query, "fp")),
r#type: get_parameter_value(&query, "type"),
encryption: get_parameter_value(&query, "encryption"),
header_type: get_parameter_value(&query, "headerType"),
host: url_decode(get_parameter_value(&query, "host")),
seed: url_decode(get_parameter_value(&query, "seed")),
quic_security: get_parameter_value(&query, "quicSecurity"),
key: get_parameter_value(&query, "key"),
mode: url_decode(get_parameter_value(&query, "mode")),
service_name: url_decode(get_parameter_value(&query, "serviceName")),
slpn: get_parameter_value(&query, "slpn"),
spx: url_decode(get_parameter_value(&query, "spx")),
extra: url_decode(get_parameter_value(&query, "extra")),
allowInsecure: get_parameter_value(&query, "allowInsecure"),
};
return a;
}