urlParsingConfiguration
A property to configure the filter’s parser behavior.
Declaration
var urlParsingConfiguration: NEURLFilterManager.ParsingConfiguration { get set }Discussion
Use this property to control which URL components to exclude, and to customize parsing behavior during sub-URL enumeration. This determines how the filter parses URLs which sub-URLs it generates for matching against the filter data set.
For any excluded component – domain, path, query, or fragment – the filter substitutes "%*" in place as a placeholder. By contrast, if you strip the domain or www subdomain, they’re removed entirely without a placeholder, since URL matching doesn’t typically require them.
As an example, consider the URL https://www.example.com/a/b/c?id=123#fragment and a configuration set as follows:
var config = manager.urlParsingConfiguration
config.excludeScheme = true
config.domain.stripWWW = true
config.path.excluded = true
manager.urlParsingConfiguration = configThe parsing result is example.com/%*?id=123#fragment, where "%*" acts as the placeholder for the excluded path component. The presence of a placeholder indicates the original URL contained that component, but the parsing configuration excluded it.
If the filter manager sets urlParsingRegularExpression, this configuration has no effect.