如何启用 Node.js 运行脚本(Discord Bot)?

问题描述 投票:0回答:2

我尝试在Visual Studio Code的powershell中使用全局“nodemon”函数。我正在使用 Node.js。当我尝试使用“nodemon”功能时,收到一条错误消息“无法加载文件名,因为此系统上禁用了运行脚本。有关详细信息,请参阅 about_Execution_Policies 位于 https://go.microsoft.com/fwlink/?LinkID=135170。” 有谁知道如何启用运行脚本并解决问题?

我尝试在“nodemon”之后输入文件路径,但出现了相同的错误。

node.js discord discord.js node-modules nodemon
2个回答
0
投票

您可以使用 Set-ExecutionPolicy 来执行此操作:

$ Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted
  • -Scope CurrentUser
    设置当前用户的执行策略。 这里
  • 有不同的值可用并列出
  • -ExecutionPolicy Unrestricted
    设置指定范围的执行策略。所有可能值的列表都列在here

但是,请注意,这确实存在安全隐患,因此仅当您信任要运行的脚本时才执行此操作。

要恢复此更改以再次阻止所有脚本,您可以使用

$ Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Restricted

有关执行策略的更多信息:learn.microsoft.com


0
投票

运行脚本是 powershell 中的一种安全功能。以下是不同类型的运行脚本执行策略的列表:

  • 受限:这是默认策略,阻止运行任何脚本。您仍然可以使用 PowerShell 执行单个命令,但无法执行脚本。
  • AllSigned:此策略允许您运行由受信任的发布者进行数字签名的脚本。任何未签名的脚本都不会被执行。
  • RemoteSigned:此策略使您能够运行本地创建的脚本,而从互联网下载的脚本必须由受信任的发布者签名才能执行。
  • 无限制:此策略允许执行所有脚本,无论其来源如何或是否经过签名。此设置可能会带来安全风险,请谨慎使用。

如果您不打算在 powershell 中使用任何可能有害或未知的脚本(nodemon 不是其中之一),则可以将策略设置为“无限制”。

您需要以管理员身份打开powershell,然后粘贴以下内容:

Set-ExecutionPolicy Unrestricted

您可以将执行策略更改为您想要的任何内容,但它可能不符合运行nodemon的要求。

Set-ExecutionPolicy [Execution Policy Here]

© www.soinside.com 2019 - 2024. All rights reserved.