我们如何从chrome扩展中执行(shell或bash)命令; Chrome API中是否提供了一种方法?
答案 0 :(得分:5)
没有。这样的能力会非常可怕。您可能对Native Messaging API感兴趣,但您需要分发通常需要管理员权限的本机应用程序安装程序。 Your other question表明这种方法不适用于您的用例。
答案 1 :(得分:0)
如果您正在运行本地服务器,则有一种更简单的方法。本地服务器可以执行该命令。通过访存调用端点。这里是一个例子:
chrome.contextMenus.create({
title: "Open in Safari",
contexts: ["all"],
onclick: info => {
const u = 'http://localhost:3012/to-safari?url=info.pageUrl;
fetch(u).then(result => console.info(result)).catch(err => console.error(err));
}
});
我这样做是在Safari中打开当前网址(在Chrome中)。当然,您的服务器可以执行任何命令。
顺便说一句,清单中不需要特殊权限。