]> OzVa Git service - ozva-cloud/commitdiff
feat: options method return status 200
authorsigoden <sigoden@gmail.com>
Sun, 12 Jun 2022 01:33:01 +0000 (09:33 +0800)
committersigoden <sigoden@gmail.com>
Sun, 12 Jun 2022 01:33:01 +0000 (09:33 +0800)
src/server.rs
tests/http.rs

index b89f7c76aa04be9ef0f79bb7aef5609c93f75e7f..96653746490331e3d0c4d1307c2bd118fec9b669 100644 (file)
@@ -210,7 +210,7 @@ impl InnerService {
                 }
             }
             Method::OPTIONS => {
-                self.handle_method_options(&mut res);
+                self.handle_options(&mut res);
             }
             Method::PUT => {
                 if !allow_upload || (!allow_delete && is_file && size > 0) {
@@ -549,7 +549,7 @@ impl InnerService {
         Ok(())
     }
 
-    fn handle_method_options(&self, res: &mut Response) {
+    fn handle_options(&self, res: &mut Response) {
         res.headers_mut().insert(
             "Allow",
             "GET,HEAD,PUT,OPTIONS,DELETE,PROPFIND,COPY,MOVE"
@@ -557,8 +557,6 @@ impl InnerService {
                 .unwrap(),
         );
         res.headers_mut().insert("DAV", "1".parse().unwrap());
-
-        status!(res, StatusCode::NO_CONTENT);
     }
 
     async fn handle_propfind_dir(
index d8a88470446870167d3605a7c2334196b9a9f92f..0d7d3e1e13eef68324bc7d7a58cac1842a580984 100644 (file)
@@ -129,7 +129,7 @@ fn head_file_404(server: TestServer) -> Result<(), Error> {
 #[rstest]
 fn options_dir(server: TestServer) -> Result<(), Error> {
     let resp = fetch!(b"OPTIONS", format!("{}index.html", server.url())).send()?;
-    assert_eq!(resp.status(), 204);
+    assert_eq!(resp.status(), 200);
     assert_eq!(
         resp.headers().get("allow").unwrap(),
         "GET,HEAD,PUT,OPTIONS,DELETE,PROPFIND,COPY,MOVE"