Skip to content

[🚀 Feature]: Implement high level BiDi network commands #13993

Open
@titusfortner

Description

@titusfortner

Feature and motivation

At the Selenium Dev Summit we agreed on this API to be generally applied across the bindings; we'll keep this labeled beta while we make sure that it works for what is needed

We want the methods to be accessible from a network() method available directly from the Driver class (e.g., driver.network.addRequestHandler(), driver.network().addRequestHandler()). We can't do everything just like this in all the languages, because, for example, .NET uses events with a += and -= for adding and removing handler events so we don't went "add" and "remove" methods.

Implementations:

Method Java NodeJS Python Ruby .NET
addRequestHandler() #14751
removeRequestHandler() #14751
clearRequestHandlers() #14751
addResponseHandler()
removeResponseHandler()
clearResponseHandlers()
addAuthenticationHandler() #14334 #14345 #14523
removeAuthenticationHandler() #14334 #14345 #14523
clearAuthenticationHandlers() #14334 #14345 #14523

Considerations:

If we can figure out how to get the "add" methods return an id that can be used by the "remove" methods, that would be a lot easier for or users. Might be too complicated to implement.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-needs decisionTLC needs to discuss and agreeB-devtoolsIncludes everything BiDi or Chrome DevTools relatedC-dotnet.NET BindingsC-javaJava BindingsC-nodejsJavaScript BindingsC-pyPython BindingsC-rbRuby BindingsI-enhancementSomething could be better

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions