Documentation
¶
Overview ¶
Package parseurl is a simple wrapper that fixes some of the weird issues that the standard Golang 'url.Parse' function does.
Fixes things such as
- "localhost:8080" url.Parse: Host == "", Scheme == "localhost:8080"
- "10.10.10.10/url/" url.Parse: Returns an error <why?>
- "localhost:" url.Parse: Host == "localhost:" <doesn't strip the ':'>
This package adds in checks for invalid values returned by 'url.Parse' such as the Host field being empty. All non-standard errors wrap the error "ErrInvalidURL" to assist in indication of the error.
This library is a drop-in replacement for the "url.Parse" function. Just import "github.com/PurpleSec/parseurl" and go!
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Parse ¶
Parse parses rawurl into a URL structure.
The rawurl may be relative (a path, without a host) or absolute (starting with a scheme). Trying to parse a hostname and path without a scheme is invalid but may not necessarily return an error, due to parsing ambiguities.
This function is a modified version of the standard 'url.Parse' function that will handle and fix any errors that occur during Parsing. This function also includes additional error checks that will prevent some common formatting issues from occuring without an error.
Types ¶
This section is empty.