38

微软即将为Edge推出新的开发工具协议

 5 years ago
source link: https://www.linuxprobe.com/edge-http-websocket.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
导读 微软于4月30日发布了Edge 17版,其中推出了微软Edge开发工具协议(Microsoft Edge DevTools Protocol),这是一组JSON和JSON-RPC的API,用于让客户端与Edge浏览器的选项卡进行交互。该协议遵循了Chrome开发工具协议模型,让开发人员能够通过标准Web技术来构建可与Edge浏览器交互的工具。

在发布申明博客中,微软资深产品经理Brendyn Alexander表示:

该协议通过解耦客户端与平台,让我们开始了推进Edge浏览器开发工具生态系统的第二阶段任务。在本地和Web开发环境中,HTTP和WebSocket技术随处可见,因此各种编程语言编写的客户端可以通过该协议与Edge浏览器进行集成。我们希望该协议的推出,可以大大降低那些想要创建Edge开发工具的开发者们的门槛。

微软还发布了使用该协议的两个客户端:微软Edge开发预览工具和Visual Studio 2017。该协议仿照Chrome开发工具协议以及正在发展中的WICG开发工具标准。根据目前客户端上的文档:

开发工具协议0.1初始版本提供了一些核心的调试功能,如设置断点、代码步进以及查看堆栈信息。 在Edge开发工具的界面中,这些就是调试器面板中的各个功能,但没有缓存视图(如Web存储,Service worker,Cache API和IndexedDB)。

协议的功能按“域”维度来组织,初始版本主要支持了“调试器”域,并最小限度支持了“页面”和“运行时”域,当然还有用于查询可用域列表的“Schema”元数据域。

如果微软继续基于Chrome开发工具协议进行开发,可以预计在未来的版本中将增加更多其他域。在谷歌开发工具协议的文档中重点介绍了39个不同的域,从可访问性到Service worker,外部工具可以使用大量的浏览器功能。

其他主流浏览器也都正处于实现开发工具协议的不同阶段。按Chrome最新稳定版文档中描述,其包含了16个域,而webkit(即Safari)的github中的协议目录上显示,有24个不同域的协议正在开发中。Firefox似乎是主流浏览器中最落后的一个,只存在一个已经停滞的相关tracking bug也没有相关文档。

在浏览器外,Node.js也支持了谷歌开发工具协议的一个子集,在文档中显示目前支持六个域。开发人员可以通过Chrome工具来直接调试Node程序。想要了解如何通过该方式对Node进行调试,可以查看Chrome开发工具的开发者Paul Irish的相关博客。

有兴趣深入了解微软Edge开发工具协议和微软的开发者生态系统的开发人员可以试用微软Edge开发预览工具,或参阅协议文档。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK