package tiny_httpd
Minimal HTTP server using threads
Install
Dune Dependency
Authors
Maintainers
Sources
tiny_httpd-0.19.tbz
sha256=55b6eed7d2e41b9b2a282b344e01ca010abdba66cbbbbe5adab18303b9ff8360
sha512=98c599627b9cd98f641d389e022f9ddc025bfba838793267904b94a01b0b40b3b4cfd8f5a8d8214aaa947958e45cecbe1df751692a461f929802714d7af50e06
doc/src/tiny_httpd.multipart-form-data/content_disposition.ml.html
Source file content_disposition.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
open Utils_ type t = { kind: string; name: string option; filename: string option } (** Simple display *) let to_string (self : t) = let stropt = function | None -> "None" | Some s -> spf "%S" s in spf "{kind=%S; name=%s; filename=%s}" self.kind (stropt self.name) (stropt self.filename) let parse (hs : Tiny_httpd.Headers.t) : t option = match Tiny_httpd.Headers.get "content-disposition" hs with | None -> None | Some s -> (match String.split_on_char ';' s with | [] -> failwith (Printf.sprintf "multipart: invalid content-disposition %S" s) | kind :: tl -> let name = ref None in let filename = ref None in List.iter (fun s -> match Utils_.split1_on ~c:'=' @@ String.trim s with | Some ("name", v) -> name := Some (Utils_.remove_quotes v) | Some ("filename", v) -> filename := Some (Utils_.remove_quotes v) | _ -> ()) tl; Some { kind; name = !name; filename = !filename })
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>