URLURL module is universal and has 2 implementations with the same API:
url_js library is a wrapper around the URL API in the browser binded with Melange.url_native library is a native implementation with ocaml-uri (RFC3986 URI parsing library for OCaml).Depending on you setup, you would need to add the following dependencies to your `dune` stanzas:
(library
(name ...)
(modes melange)
(libraries (server-reason-react.url_js))
(library
(name ...)
(modes native)
(libraries (server-reason-react.url_native)) let url = URL.make("https://example.com:8080/path?query=1#hash");
URL.protocol(url); (* => Some("https:") *)
URL.hostname(url); (* => "example.com" *)
URL.port(url); (* => Some("8080") *)
URL.pathname(url); (* => "/path" *)
URL.search(url); (* => Some("?query=1") *)
URL.hash(url); (* => Some("#hash") *)module SearchParams : sig ... endval makeExn : string -> tval make : string -> t optionval makeWith : string -> base:string -> tval hash : t -> string optionval host : t -> string optionval hostname : t -> stringval href : t -> stringval origin : t -> string optionval password : t -> string optionval pathname : t -> stringval port : t -> string optionval protocol : t -> string optionval search : t -> string optionval searchParams : t -> SearchParams.tval username : t -> string optionval toString : t -> string