使greasemonkey脚本与正在运行的进程交互

Getting a greasemonkey script to interact with a running process?

本文关键字:运行 进程 交互 greasemonkey 脚本      更新时间:2023-09-26

假设我的机器上运行着一个本地守护进程,并且我想通过Greasemonkey脚本与这个守护进程对话。我知道网站JavaScript的核心概念之一是它与其他一切都是隔离的,但我想知道是否有一个解决方案。

我的一个想法是使用WebSocket向本地守护进程发送数据,但它们只在基于Webkit的浏览器上可用。

三种可能:

  1. 为守护进程提供web服务器功能,然后通过GM_xmlhttpRequest()使用正常的AJAX技术与之交互

  2. 制作一个Firefox插件,而不是GM脚本。加载项可以以比GM脚本更危险的方式与本地系统交互。

  3. 我不推荐最后一种方法,但为了完整起见包括它…守护进程可能读取和/或写入Firefox cookie或localStorage。GM脚本也可以,但是这里适用XSS限制(不像GM_xmlhttpRequest())。

您可以让守护进程接受HTTP请求,这很容易使用JavaScript完成?我认为你需要在这里改进守护进程,而不是脚本本身——JavaScript是非常安全的,而Greasemonkey只是更进一步。