Browse Source

Implement response header

master
Garrit Franke 4 years ago
parent
commit
8661c5e564
  1. 24
      src/main.rs

24
src/main.rs

@ -23,14 +23,26 @@ fn main() {
let mut raw_request = String::from_utf8_lossy(&buffer[..]).to_mut().to_owned();
if raw_request.starts_with("gemini://") {
raw_request.push_str("gemini://");
if !raw_request.starts_with("gemini://") {
raw_request = "gemini://".to_owned() + &raw_request;
}
if let Ok(request) = Url::parse(&raw_request) {
if let Err(e) = stream.write(request.path().as_bytes()) {
println!("Could not write to stream: {}", e);
}
let request = Url::parse(&raw_request).expect("Can not parse URL");
let mut response: Vec<u8> = Vec::new();
// 20 SUCESS status
response.extend("20".as_bytes());
// <Space>
response.push(0x20);
// <Meta>
response.extend("SUCCESS".as_bytes());
response.extend("\r\n".as_bytes());
if let Err(e) = stream.write(&response) {
println!("Could not write to stream: {}", e);
}
}
}

Loading…
Cancel
Save