Parse an OCapN locator URI of the form
ocapn://<designator>.<transport>[/s/<swiss>][?hint=value&...]
The swissnum, when present, is base64url(no-padding) of the raw
swissnum bytes per the OCapN spec (draft-specifications/Locators.md)
and the Spritely Goblins reference implementation
(goblins/ocapn/ids.scm). No other encodings are accepted.
The host portion of an ocapn:// URI encodes a <designator>.<transport>
pair, with the transport occupying the last dot-separated label. We
lean on the standard URL parser for the heavy lifting (scheme,
percent-decoding, query parameters) and only special-case that split.
Parse an OCapN locator URI of the form
ocapn://<designator>.<transport>[/s/<swiss>][?hint=value&...]The swissnum, when present, is base64url(no-padding) of the raw swissnum bytes per the OCapN spec (
draft-specifications/Locators.md) and the Spritely Goblins reference implementation (goblins/ocapn/ids.scm). No other encodings are accepted.The host portion of an
ocapn://URI encodes a<designator>.<transport>pair, with the transport occupying the last dot-separated label. We lean on the standardURLparser for the heavy lifting (scheme, percent-decoding, query parameters) and only special-case that split.