stage 8 attempt 2
This commit is contained in:
parent
edfd90b787
commit
d916e58f20
@ -70,8 +70,6 @@ async fn process (mut stream: TcpStream, args: A) -> Result<()> {
|
|||||||
|
|
||||||
let headers = Headers::parse(&mut data).await;
|
let headers = Headers::parse(&mut data).await;
|
||||||
|
|
||||||
let length = headers.get("Content-Length").parse().unwrap();
|
|
||||||
let body = parse_req_body(&mut data, length).await;
|
|
||||||
|
|
||||||
use Method as M;
|
use Method as M;
|
||||||
let response = match (method, target.as_str()) {
|
let response = match (method, target.as_str()) {
|
||||||
@ -89,6 +87,9 @@ async fn process (mut stream: TcpStream, args: A) -> Result<()> {
|
|||||||
Response::OctetStream(buf)
|
Response::OctetStream(buf)
|
||||||
},
|
},
|
||||||
(M::POST, r) if r.starts_with("/files") => 'file : {
|
(M::POST, r) if r.starts_with("/files") => 'file : {
|
||||||
|
let length = headers.get("Content-Length").parse().unwrap();
|
||||||
|
let body = parse_req_body(&mut data, length).await;
|
||||||
|
|
||||||
let Some(path) = &args.directory else { break 'file Response::_500; };
|
let Some(path) = &args.directory else { break 'file Response::_500; };
|
||||||
let path = path.join(r.trim_start_matches("/files/"));
|
let path = path.join(r.trim_start_matches("/files/"));
|
||||||
let Ok(mut f) = File::create(path).await else { break 'file Response::_500; };
|
let Ok(mut f) = File::create(path).await else { break 'file Response::_500; };
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user