I have an application that takes all the parameters in the url like this: /category/subcategory/sub-subcategory
. I want to be able to give out extra parameters at the end of the URL, like page-2/order-desc
. This would make the whole URL into cat/subcat/sub-subcat{delimiting-character}page-2/order-desc
.
My question is: what characters could I use as {delimiting-character}
. I tend to prefer ":" as I know for sure it will never appear anyplace else but I don't know if it would be standard compliant or at least if it will not give me problems in the future.
As I recall vimeo used something like this: vimeo.com/video:{code}
but they seem to have changed this.
These characters are "{", "}", "|", "\", "^", "~", "[", "]", and "`". All unsafe characters must always be encoded within a URL.
Original answer from RFC 1738 specification: Thus, only alphanumerics, the special characters " $-_. +! *'(), ", and reserved characters used for their reserved purposes may be used unencoded within a URL.
It is common for websites to use alphanumeric character and only one special character, the hyphen, to separate words. It is unlikely that anyone would expect to see or type a special character other than the hyphen into a URL.
You can use alphanumeric, plus the special characters "$-_.+!*'()," More info here: http://www.ietf.org/rfc/rfc1738.txt
Also, take note not to exceed 2000 characters in url
The most recent URI spec is RFC 3986; see the ABNF for details on what characters are allowed in which parts for the URI.
The format for an absolute path part is:
path-absolute = "/" [ segment-nz *( "/" segment ) ]
segment = *pchar
segment-nz = 1*pchar
pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
pct-encoded = "%" HEXDIG HEXDIG
unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"
sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
/ "*" / "+" / "," / ";" / "="
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With