Safely encode and decode URL components for query strings and paths.
Encode/Decode URL: Use for complete URLs. Preserves protocol, domain, and basic structure.
Encode/Decode Component: Use for query parameters, path segments, or form data. More aggressive encoding.
Example: "hello world" → "hello%20world"