1use http_client::Request;
2
3const USER_AGENT: &str = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
5
6const SEC_CH_UA: &str =
8 "\"Not)A;Brand\";v=\"8\", \"Chromium\";v=\"138\", \"Google Chrome\";v=\"138\"";
9const SEC_CH_UA_MOBILE: &str = "?0";
10const SEC_CH_UA_PLATFORM: &str = "\"Linux\"";
11
12pub fn add_common_headers(request: &mut Request) {
14 let _ = request.insert_header("User-Agent", USER_AGENT);
15 let _ = request.insert_header("Accept-Language", "en-US,en;q=0.9");
16 let _ = request.insert_header("Accept-Encoding", "gzip, deflate, br");
17 let _ = request.insert_header("DNT", "1");
18 let _ = request.insert_header("Connection", "keep-alive");
19 let _ = request.insert_header("sec-ch-ua", SEC_CH_UA);
20 let _ = request.insert_header("sec-ch-ua-mobile", SEC_CH_UA_MOBILE);
21 let _ = request.insert_header("sec-ch-ua-platform", SEC_CH_UA_PLATFORM);
22}
23
24pub fn add_edit_headers(request: &mut Request, referer_url: &str) {
26 add_common_headers(request);
27 let _ = request.insert_header("Accept", "*/*");
28 let _ = request.insert_header(
29 "Content-Type",
30 "application/x-www-form-urlencoded;charset=UTF-8",
31 );
32 let _ = request.insert_header("Priority", "u=1, i");
33 let _ = request.insert_header("X-Requested-With", "XMLHttpRequest");
34 let _ = request.insert_header("Sec-Fetch-Dest", "empty");
35 let _ = request.insert_header("Sec-Fetch-Mode", "cors");
36 let _ = request.insert_header("Sec-Fetch-Site", "same-origin");
37 let _ = request.insert_header("Referer", referer_url);
38}
39
40pub fn add_get_headers(request: &mut Request, is_ajax: bool, referer_url: Option<&str>) {
42 add_common_headers(request);
43
44 if is_ajax {
45 let _ = request.insert_header("Accept", "*/*");
46 let _ = request.insert_header("X-Requested-With", "XMLHttpRequest");
47 } else {
48 let _ = request.insert_header(
49 "Accept",
50 "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"
51 );
52 let _ = request.insert_header("Upgrade-Insecure-Requests", "1");
53 }
54
55 if let Some(referer) = referer_url {
56 let _ = request.insert_header("Referer", referer);
57 }
58}
59
60pub fn add_cookies(request: &mut Request, cookies: &[String]) {
62 if !cookies.is_empty() {
63 let cookie_header = cookies.join("; ");
64 let _ = request.insert_header("Cookie", &cookie_header);
65 }
66}