微信PC端浏览器内置浏览器

嵌入式Chromium框架(简称CEF) 是一个由Marshall Greenblatt在2008建立的开源项目,它主要目的是开发一个基于Google Chromium的Webbrowser控件,支持用户插件,协议,javascript对象以及javascript扩展,宿主程序可以随意地控件资源下载,导航,下下文内容和打印等,并且可以跟Google Chrome浏览器一起,支持高性能和Html5 技术。
Hook 技术又叫做钩子函数,是一种通过劫持原函数在原函数的运行的基础上运行你所需要执行代码,此时你的代码是可以获取到原函数的程序上下文(参数等等)

此时可以通过在启动参数里增加 --remote-debugging-port=8000 可以开启Cef的远程调试方式。当用内置浏览器打开的时候访问http://localhost:8000/这个地址时可以发现

由于我使用的谷歌版本过高,该函数是已经执行不了的了,导致控制台页面无法生成,此时可以通过更换对应函数的版本来进行访问,我这边是使用的是 Opera 66.0.3515.115,进入后便是控制台页面

同时当你在内置浏览器页面右键的时候会发现右键选项多出了几个按钮

此时你已经可以通过开启控制台的方式调试内置浏览器页面了。

同时由于由远程调试协议的存在

你甚至可以通过编程语言操控浏览器

const CDP = require(chrome-remote-interface);async function example() {    let client; try {        // connect to endpoint        client = await CDP({ port: 8000, local: true });        const { Network, Page, Runtime } = client;        // setup handlers        Network.requestWillBeSent((params) => { });        Network.responseReceived((params) => { })        // enable events then start!             await Network.enable(); await Page.enable(); Page.navigate({ url: chrome://version }).then((res) => { }); await Page.loadEventFired();    } catch (err) { console.error(err); } finally { if (client) { await client.close(); } }} example();

利用该方法可以干什么呢?

非常感谢所提供的情报

devtools_resources.pak下载地址

链接: [pan.baidu.com/s/12ZaPeLaR…](链接: https://pan.baidu.com/s/12ZaPeLaRn7cztDSNYqRHFQ)

提取码 ytyz

腾讯网盘:

服务推荐

经验分享 程序员 微信小程序 职场和发展