wip basic error response

This commit is contained in:
Swrup 2025-09-28 22:12:16 +02:00
parent 4cbf3c722c
commit 0549bb098a
4 changed files with 72 additions and 41 deletions

View file

@ -1,6 +1,9 @@
let accept_header_value =
let s = Fmt.str "%a" Util.(pp_array pp_mime) Assets.supported_mimetype_arr in
s
let avail_languages_header_value =
let pp_array = Fmt.array ~sep:(Fmt.any ", ") Fmt.string in
let s = Fmt.str "%a" pp_array Assets.supported_lang_arr in
let s = Fmt.str "%a" (Util.pp_array Fmt.string) Assets.supported_lang_arr in
s
let select_mimetype headers =
@ -9,7 +12,6 @@ let select_mimetype headers =
|> Cohttp.Accept.qsort
|> List.filter_map (fun (_q, (m, _p)) -> Util.media_to_known_mimetype m)
|> List.find_opt Assets.is_supported_mimetype
|> Option.to_result ~none:"no acceptable mimetype"
let select_language headers =
let accept_language = Vif.Headers.get headers "accept-language" in
@ -24,7 +26,7 @@ let select_language headers =
| [] -> assert false
| primary_tag :: _ -> primary_tag))
|> List.find_opt Assets.is_supported_lang
|> Option.to_result ~none:"no acceptable language"
|> Option.value ~default:Config.default_lang
let select_encoding headers =
Vif.Headers.get headers "accept-encoding"