RFC 3986 Percent-Encoding Specification
URL encoding maps 8-bit octets outside the unreserved ASCII character set to a triplet consisting of the percent character "%" followed by two hexadecimal digits representing the byte value.
1. Percent-Encoding Transposition Mapping
Byte(b)⟶% HEX₁HEX₀whereHEX = hexadecimal(ASCII(c))
2. RFC 3986 Unreserved Character Domain
Unreserved Set={ A–Z, a–z, 0–9, '-', '_', '.', '~' }
Step-by-Step URL Query Parameter Encoding Breakdown
Step 1: Identify Reserved Characters in Query
Input:
"user=jane&city=New York" contains spaces and reserved &, = delimiters.Step 2: Convert Reserved Glyphs to Hex Codes
Space (ASCII 32) → %20
'=' (ASCII 61) → %3D
'&' (ASCII 38) → %26
Step 3: Assemble Safe URI Component
Encoded Query=user%3Djane%26city%3DNew%20York
Common URL Reserved Characters Reference
| Character | Hex Percent Code | Description / Role | encodeURI Preservation |
|---|---|---|---|
| ␣ (space) | %20 or + | Word separator | Encoded (%20) |
| / | %2F | Path segment separator | Preserved (/) |
| ? | %3F | Query string initiator | Preserved (?) |
| & | %26 | Query parameter delimiter | Preserved (&) |
| # | %23 | Fragment identifier / hash anchor | Preserved (#) |