MCPcopy Create free account
hub / github.com/SeleniumHQ/selenium / getWsUrl

Method getWsUrl

javascript/selenium-webdriver/lib/webdriver.js:1331–1358  ·  view source on GitHub ↗

* Retrieves 'webSocketDebuggerUrl' by sending a http request using debugger address * @param {string} debuggerAddress * @param target * @param caps * @return {string} Returns parsed webSocketDebuggerUrl obtained from the http request

(debuggerAddress, target, caps)

Source from the content-addressed store, hash-verified

1329 * @return {string} Returns parsed webSocketDebuggerUrl obtained from the http request
1330 */
1331 async getWsUrl(debuggerAddress, target, caps) {
1332 if (target && cdpTargets.indexOf(target.toLowerCase()) === -1) {
1333 throw new error.InvalidArgumentError('invalid target value')
1334 }
1335
1336 if (debuggerAddress.match(/\/se\/cdp/)) {
1337 return debuggerAddress
1338 }
1339
1340 let path
1341 if (target === 'page' && caps['map_'].get('browserName') !== 'firefox') {
1342 path = '/json'
1343 } else if (target === 'page' && caps['map_'].get('browserName') === 'firefox') {
1344 path = '/json/list'
1345 } else {
1346 path = '/json/version'
1347 }
1348
1349 let request = new http.Request('GET', path)
1350 let client = new http.HttpClient('http://' + debuggerAddress)
1351 let response = await client.send(request)
1352
1353 if (target.toLowerCase() === 'page') {
1354 return JSON.parse(response.body)[0]['webSocketDebuggerUrl']
1355 } else {
1356 return JSON.parse(response.body)['webSocketDebuggerUrl']
1357 }
1358 }
1359
1360 /**
1361 * Sets a listener for Fetch.authRequired event from CDP

Callers 1

createCDPConnectionMethod · 0.95

Calls 4

sendMethod · 0.95
getMethod · 0.65
matchMethod · 0.45
parseMethod · 0.45

Tested by

no test coverage detected