【发布时间】:2019-08-14 13:52:42
【问题描述】:
目前我的办公室正在运行一个 AHK 脚本来提取环境变量。这些环境变量然后在关闭工单时用作特定的输出数据,因为我的办公室有一个工单关闭环境。这暂时有效,但是我正在研究自动化这个过程,并开始尝试在按下特定键时自动关闭票证。我已经能够执行此任务,但我基本上必须在 TamperMonkey 脚本中为每个用户提供静态变量。由于 AHK 脚本,使用此票证站点的每个人都已经具有特定的环境变量,并且希望尝试将其实现到 Tampermonkey 脚本中,而无需完全更改站点。
我在本地托管了该站点并使用 Node 来执行此操作,并且我成功地执行了此操作,但它在 Tampermonkey 路由上不起作用。我一直在节点端使用 process.env.ENV_VARIABLE 但我试图避免在站点本身上完全实现它。我在已经使用的 Autohotkey 脚本中添加了一些基本变量示例。
GetGreeting() {
global greeting
return greeting
}
GetSalutation() {
global salutation
return salutation
}
GetUserName() {
Envget, e_Ticketname, Ticketuser
return e_Ticketname
}
当按下特定键时,它应该写入特定消息并包含所述特定环境变量。目前,我认为 Tampermonkey 无法真正理解环境变量,因为它不断给出未定义的错误。任何想法。
【问题讨论】:
-
这些环境变量在哪里?您还提到了 AHK - 那应该如何与 TamperMonkey 交互? TM 在浏览器中运行,而 AHK 在浏览器之外。从我收集的信息来看,您想以某种方式将两者联系起来,但我不确定您希望如何实现以及您对 AHK 脚本有多少(如果有)控制权以及您有多少(如果有)控制权在网站上的那些环境变量上。
-
好的,那么在这种情况下,环境变量在哪里定义?操作系统?因为我认为您无法在浏览器中访问这些内容。
-
Office 目前正在使用 AHK。我试图完全摆脱它,因为它只是一个复制/粘贴解决方案。在 AHK 中,当假设按下 F6 时会输出预定义的字符串,您会在消息框中获得预设消息。 Mantis Bug 跟踪器被用作基本票务站点。除了获取输出并将其设置为 Tampermonkey 脚本中的变量外,不需要对环境变量进行任何控制。环境变量只是在注册表中的用户本地机器上。但是,您可以使用 dotenv 模块来使用这些变量。
-
对不起,我试图编辑它,但没有机会修复它。
-
理想情况下,在我的本地托管版本的票务网站上作为测试,我已经实现了这个 Node.js 模块,我在站点文件树中有一个 .env 文件,JS 文件为它们的变量读取该文件@ 987654321@。我认为在 Tampermonkey 中没有任何方法可以做到这一点,而且我似乎找不到任何有答案的人。如果不是,我的想法将不得不改变为这里的一些人实施它。我只是不想为 4 个人实施这个大的改变。如果没有办法,不用担心。
标签: javascript environment-variables