Module URL

URL module is universal and has 2 implementations with the same API:

Setup with dune

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))

Usage

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") *)

URL.SearchParams

module SearchParams : sig ... end

URL

type t
val makeExn : string -> t
val make : string -> t option
val makeWith : string -> base:string -> t
val hash : t -> string option
val setHash : t -> string -> t
val host : t -> string option
val setHost : t -> string -> t
val hostname : t -> string
val setHostname : t -> string -> t
val href : t -> string
val setHref : t -> string -> t
val origin : t -> string option
val password : t -> string option
val setPassword : t -> string -> t
val pathname : t -> string
val setPathname : t -> string -> t
val port : t -> string option
val setPort : t -> string -> t
val protocol : t -> string option
val setProtocol : t -> string -> t
val setSearch : t -> string -> t
val searchParams : t -> SearchParams.t
val username : t -> string option
val setUsername : t -> string -> t
val toString : t -> string