Node.JS 版本管理工具 Fnm 安装及配置(Windows)

Fnm 安装及配置(Windows)

Fnm(Fast Node Manager)🚀 一个快速而简单的 Node.js 版本管理工具,使用 Rust 编写。

1 安装

1.1 官网

Fnm 官网需要在 Github 上访问,如果访问不了可以通过 GitCode 镜像网站访问。

1.2 下载

Fnm 官方网站下载适用于 Windows 的 Fnm 版本时,如遇到访问失败或者下载缓慢问题,请看下文。
在这里插入图片描述

遇到 Github 地址打不开或者下载文件慢,请参考如下方法。

① 通过 GitCode 镜像网站 下载,但可能会遇到暂无数据的情况。
在这里插入图片描述
② 通过代理网站 Github Proxy 直接下载,Fnm 下载路径如下:

https://github.com/Schniz/fnm/releases/download/v1.38.1/fnm-windows.zip

在这里插入图片描述
③ 使用 dev-sidecar 工具,安装教程请参考 dev-sidecar 官网。也可通过代理快速下载,下载地址如下:

https://github.com/docmirror/dev-sidecar/releases/download/v2.0.0.1/DevSidecar-2.0.0.1-windows-x64.exe

在这里插入图片描述

1.3 解压

解压至所需安装位置(无需运行),解压后文件夹目录结构如下。
在这里插入图片描述

1.4 配置环境变量

将 Fnm 的安装路径添加到系统的环境变量中,具体步骤如下:
① 右键点击“此电脑”或“我的电脑”,选择“属性”;
② 点击“高级系统设置”;
③ 在“系统属性”窗口中,点击“环境变量”;
④ 在“系统变量”部分,点击“新建”;
⑤ 分别输入变量名FNM_DIR与变量值D:\software\fnm-windows记得替换为自己的Fnm安装路径);
在这里插入图片描述
⑥ 在“系统变量”部分,找到 Path 变量并双击;
⑦ 点击“新建”,添加 Fnm 的安装路径%FNM_DIR%
在这里插入图片描述
⑧ 点击“确定”以保存更改。

1.5 验证

以管理员身份打开终端 PowerShell(右击windows开始图标,选择Windows PowerShell(管理员)),输入以下命令:

fnm --version

如果显示 Fnm 的版本号(如下图所示),则表示安装成功。否则请重新尝试以上步骤。

2 Fnm 配置

在终端 PowerShell 中输入以下命令:

fnm env

在这里插入图片描述

具体释义如下:
$env:FNM_NODE_DIST_MIRROR:指定 Node.js 分发包的镜像地址。
$env:FNM_VERSION_FILE_STRATEGY:定义如何处理版本文件。
$env:FNM_ARCH:指定系统的架构类型。
$env:FNM_MULTISHELL_PATH:指定用于管理多 Shell 会话的路径。在使用多个终端或 Shell 的情况下,Fnm 会在该路径下创建相应的目录,以便管理不同 Shell 会话的 Node.js 版本。
$env:FNM_COREPACK_ENABLED:启用或禁用 Corepack。
$env:FNM_RESOLVE_ENGINES:确定是否解析引擎版本。
$env:FNM_LOGLEVEL:设置 Fnm 的日志级别,默认值info,可选值quiet, error, info。
$env:FNM_DIR:指定 Fnm 的安装目录。
注意:有些变量不能通过设置系统环境变量修改。

2.1 设置 Node 镜像地址

新增系统变量FNM_NODE_DIST_MIRROR: https://npmmirror.com/mirrors/node/,如下图所示。
在这里插入图片描述
重新打开 PowerShell 并运行fnm env命令。
在这里插入图片描述

2.2 配置 PowerShell

以管理员方式打开终端 PowerShell,目标是配置 Microsoft.PowerShell_profile.ps1配置文件。
① 创建配置文件,可以在 PowerShell 中运行以下命令:

if (-not (Test-Path $profile)) { New-Item $profile -Force }

也可以以手动方式创建,路径如下:
%userprofile%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 Powershell 5
%userprofile%\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 Powershell 6+
windows 可以在终端PowerShell运行$profile命令查看文件路径。

在这里插入图片描述
② 编辑配置文件,在 PowerShell 中运行以下命令:

Invoke-Item $profile

③ 将以下命令添加至配置文件末尾并保存。

fnm env --use-on-cd --shell powershell | Out-String | Invoke-Expression

2.3 常见问题

① 打开终端 PowerShell,出现以下报错:
在这里插入图片描述

解决方法:
以管理员权限打开终端 PowerShell,输入以下命令:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

输入 Y 确定安全策略(如果需要选择的话)。
在这里插入图片描述
② 执行fnm use <version>命令报以下错误:
在这里插入图片描述
解决方法:
按照2.2小节重新配置。

3 常用命令

// 查看所有远程可供安装的 Node 版本
fnm list-remote

// 安装某一 Node 版本
fnm install <version>

// 切换某一 Node 版本
fnm use <version>

// 查看当前使用的 Node 版本
fnm current

// 查看所有已安装的 Node 版本
fnm list

// 删除某一 Node 版本
fnm uninstall <version>

// 设置默认版本
fnm default <version>

// 设置 Node 版本别名
fnm alias <version> <alias>

// 移除 Node 版本别名
fnm unalias <alias>

4 指定项目 Node 版本

  1. package.json 文件中指定:设置以下字段。
{
  "engines": {
    "node": ">=18.0.0"
  }
}
  1. .node-version 文件中指定:在文件中设置 Node 版本。
v22.9.0

若 Fnm 不能在本地查找到符合项目指定的 Node 版本,将会在终端中给出提示,若选择 Y 将会自动下载并切换至指定 Node 版本。

在这里插入图片描述

<think>好的,我现在要解决用户关于高德地图API地址解析接口返回USERKEY_PLAT_NOMATCH错误的问题。首先,我需要理解这个错误的具体原因。根据用户提供的引用内容,特别是引用[2]和引用[3],这个错误通常是因为用户使用的密钥(User Key)与绑定的平台不匹配。比如,可能用户申请的是JS API的密钥,却用来调用Web服务接口,或者反之。 接下来,我应该整理这些信息,分步骤说明错误原因和解决方法。首先需要确认用户检查密钥绑定的平台是否正确。根据引用[3],如果申请的是JS API的key,却用在Web服务接口,就会出错。这时候需要用户去高德控制台核对应用类型。 然后,密钥配置是否正确的部分,用户需要检查请求的URL中是否有拼写错误,或者是否启用了HTTPS但没有配置对应的密钥。这部分需要提醒用户仔细检查这些细节,因为小错误也可能导致问题。 另外,用户可能没有正确设置安全密钥,比如Web服务的Key可能需要配置IP白名单或签名。引用[2]提到高级版API需要特定平台关联,所以需要确保安全设置正确。 最后,建议用户参考高德官方文档,确认接口是否支持当前使用的密钥类型。同时,建议他们生成新的密钥并测试,或者联系技术支持。需要确保每个步骤都清晰,并且引用对应的来源,比如引用[2]和引用[3]中的说明。 可能用户遇到的问题比较基础,但需要详细引导他们逐步排查。同时,生成的相关问题需要覆盖常见错误,如其他错误码、密钥安全设置、接口限制等,帮助用户全面了解可能的问题点。</think>关于高德地图API地址解析接口返回$USERKEY\_PLAT\_NOMATCH$错误的原因及解决方案,可通过以下步骤排查: ### 错误原因分析 1. **密钥平台不匹配** 该错误表示调用接口使用的密钥类型与接口要求的平台类型不一致。例如: - 申请了JavaScript API的密钥却用于Web服务接口[^3] - 移动端SDK密钥用于服务端地理编码接口[^2] 2. **密钥配置错误** - 请求URL中未正确携带密钥参数`key=YOUR_KEY` - 启用了HTTPS但未在控制台配置对应HTTPS密钥[^2] 3. **安全密钥未设置** Web服务密钥需要配置IP白名单或数字签名,若未正确设置会触发平台校验失败 ### 解决方案 1. **核对密钥类型** 登录[高德开放平台控制台],检查密钥的"应用类型"是否包含"Web服务"。独立的地理编码接口属于Web服务类型,需单独申请对应密钥。 2. **修改请求地址** 确保使用正确的服务端接口地址格式: ``` https://restapi.amap.com/v3/geocode/geo?address=北京市朝阳区&key=YOUR_KEY ``` 3. **配置安全策略** 在密钥管理界面开启"Web服务API"权限,若调用量较大需配置IP白名单(支持CIDR格式)或启用数字签名。 4. **密钥有效性验证** 可通过简单接口测试密钥状态: ```bash curl "https://restapi.amap.com/v3/ip?key=YOUR_KEY" ``` ### 补充说明 若同时出现$INVALID\_USER\_SCODE$错误,表明数字签名校验失败,需检查签名生成算法是否符合规范。建议使用官方提供的[签名生成工具]验证。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沙漠举重的萝卜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值