Method: Ferrum::Network#intercept
- Defined in:
- lib/ferrum/network.rb
#intercept(pattern: "*", resource_type: nil, request_stage: nil, handle_auth_requests: true) ⇒ Object
Set request interception for given options. This method is only sets request interception, you should use on callback to catch requests and abort or continue them.
203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 |
# File 'lib/ferrum/network.rb', line 203 def intercept(pattern: "*", resource_type: nil, request_stage: nil, handle_auth_requests: true) pattern = { urlPattern: pattern } if resource_type && RESOURCE_TYPES.none?(resource_type.to_sym) raise ArgumentError, "Unknown resource type '#{resource_type}' must be #{RESOURCE_TYPES.join(' | ')}" end if request_stage && REQUEST_STAGES.none?(request_stage.to_sym) raise ArgumentError, "Unknown request stage '#{request_stage}' must be #{REQUEST_STAGES.join(' | ')}" end pattern[:resourceType] = resource_type if resource_type pattern[:requestStage] = request_stage if request_stage @page.command("Fetch.enable", patterns: [pattern], handleAuthRequests: handle_auth_requests) end |