如何查看 Google Chrome 扩展程序的源代码?

如何查看 Google Chrome 扩展程序的源代码?

我对一些 Google Chrome 扩展程序感兴趣,即 Minimalist for Gmail 和 Minimalist for Google Reader,但我想在安装它们之前查看它们的源代码。

  1. 可以查看插件源代码吗?
  2. 有人知道他们到底在访问什么吗?或者还有更多形式上的

我不喜欢它们以某种方式访问​​我的书签、浏览历史记录和 Google 数据,正如右栏中显示的那样。

答案1

可以查看插件源代码吗?

是的。

Gmail 版 Minimalist 和 Google Reader 版 Minimalist 都是开源项目,GPLv3 许可证。您可以在各自的Google 代码主页:

Gmail 的极简主义

适用于 Google 阅读器的极简主义

有人知道他们到底在访问什么吗?或者有更多形式吗?

有点讽刺:是的,开发人员知道他们访问的是什么。也就是说,你应该在他们的论坛上问他们。或者阅读源代码。我相信他们会很乐意和你讨论他们的数据访问例程。开源软件也有很多围绕它的公开论坛讨论,这是一件好事(tm)。

答案2

另一个选择是下载 CRX 文件(右键单击“安装”按钮并选择“另存为”),然后在 7-Zip 等 ZIP 兼容归档程序中打开它。

扩展程序应该有一个清单文件,它本质上只是一个 JavaScript 文本文件。扩展程序的代码本身也是一个您可以查看的 JavaScript 文件。

有些扩展程序不会在本地执行任何工作,而只是将工作交给外部服务器执行,这当然意味着您无法看到代码或那里的数据发生了什么。但是对于更简单的扩展程序,您可以在安装之前查看代码并自行审查(当然,前提是您对 JavaScript 有一定的了解)。

答案3

作为georgiecasey 评论,原始答案完全错误。简而言之,是的,查看 Google Chrome 扩展程序的源代码非常容易,它只是具有不同文件扩展名的 ZIP 文件。

除了开源插件外,你看不到插件的源代码。那是专有信息。

确切地知道他们正在访问什么:这很棘手。你可以从适用于 Windows 的 sysinternals 工具,或者例如strace对于Linux。然而,这并不是一件容易的事,因为有大量的系统调用。

答案4

有两种方法可以查看 Chrome 扩展程序的源代码:

方法 1)无需安装扩展:

您需要下载扩展程序。为此,请转到扩展程序下载页面并记下扩展程序 ID,即 URL 的最后一部分(最后一个斜杠后)。它应该是这样的:bmihblnpomgpjkfddepdpdafhhepdbek 您可以从此 URL 下载扩展程序(将 <EXTENSION_ID> 替换为实际 ID):

https://clients2.google.com/service/update2/crx?response=redirect&os=win&arch=x64&os_arch=x86_64&nacl_arch=x86-64&prod=chromiumcrx&prodchannel=beta&prodversion=79.0.3945.53&lang=ru&acceptformat=crx3&x=id%3D<EXTENSION_ID>%26installsource%3Dondemand%26uc

对于上述 ID (bmihblnpomgpjkfddepdpdafhhepdbek),它将是:

https://clients2.google.com/service/update2/crx?response=redirect&os=win&arch=x64&os_arch=x86_64&nacl_arch=x86-64&prod=chromiumcrx&prodchannel=beta&prodversion=79.0.3945.53&lang=ru&acceptformat=crx3&x=id%3Dbmihblnpomgpjkfddepdpdafhhepdbek%26installsource%3Dondemand%26uc

这将下载相关的 .crx 文件。下载 .crx 文件后,你可以使用 7-Zip 提取其中的文件,轻松获取代码

方法 2)安装扩展后:

安装后就容易多了。扩展安装在:

视窗:C:\Users\<user_name>\AppData\Local\Google\Chrome\User Data\Default\Extensions\

Linux:~/.config/google-chrome/Default/Extensions/

有带 ID 的文件夹,例如 bmihblnpomgpjkfddepdpdafhhepdbek。在 ID 文件夹中,您将找到源代码。

相关内容