mirror of
https://github.com/puppeteer/puppeteer
synced 2024-06-14 14:02:48 +00:00
feat(launcher): add experimental "transport" option to pptr.connect (#3265)
This patch: - adds experimental "transport" option to pptr.connect - uses "transport" option to make sure Puppeteer-Web works with Target.exposeDevToolsProtocol Drive-by: add `browser.target()` to access browser target.
This commit is contained in:
@@ -185,6 +185,13 @@ class Browser extends EventEmitter {
|
||||
return Array.from(this._targets.values()).filter(target => target._isInitialized);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return {!Target}
|
||||
*/
|
||||
target() {
|
||||
return this.targets().find(target => target.type() === 'browser');
|
||||
}
|
||||
|
||||
/**
|
||||
* @return {!Promise<!Array<!Puppeteer.Page>>}
|
||||
*/
|
||||
|
||||
@@ -270,7 +270,7 @@ class Launcher {
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {!(BrowserOptions & {browserWSEndpoint: string})} options
|
||||
* @param {!(BrowserOptions & {browserWSEndpoint: string, transport?: !Puppeteer.ConnectionTransport})} options
|
||||
* @return {!Promise<!Browser>}
|
||||
*/
|
||||
async connect(options) {
|
||||
@@ -278,9 +278,9 @@ class Launcher {
|
||||
browserWSEndpoint,
|
||||
ignoreHTTPSErrors = false,
|
||||
defaultViewport = {width: 800, height: 600},
|
||||
transport = await WebSocketTransport.create(browserWSEndpoint),
|
||||
slowMo = 0,
|
||||
} = options;
|
||||
const transport = await WebSocketTransport.create(browserWSEndpoint);
|
||||
const connection = new Connection(browserWSEndpoint, transport, slowMo);
|
||||
const {browserContextIds} = await connection.send('Target.getBrowserContexts');
|
||||
return Browser.create(connection, browserContextIds, ignoreHTTPSErrors, defaultViewport, null, () => connection.send('Browser.close').catch(debugError));
|
||||
|
||||
@@ -37,7 +37,7 @@ module.exports = class {
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {{browserWSEndpoint: string, ignoreHTTPSErrors: boolean}} options
|
||||
* @param {{browserWSEndpoint: string, ignoreHTTPSErrors: boolean, transport?: !Puppeteer.ConnectionTransport}} options
|
||||
* @return {!Promise<!Puppeteer.Browser>}
|
||||
*/
|
||||
connect(options) {
|
||||
|
||||
Reference in New Issue
Block a user