Contents

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 = config

The 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.

See Also

Customizing filter parsing behavior