You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行Node.js代码报错axios.get is not a function如何解决

问题核心原因

所有报错的根源是你的项目存放在 Google Drive 同步目录(G:\My Drive) 下。云同步盘的实时文件锁、上传同步逻辑会打断npm的文件写入、tar包解压流程,直接触发你遇到的连锁异常:

  • 首次安装报ENOTDIR错误:npm创建目录结构时被同步盘的文件占用逻辑拦截,无法自动生成node_modules目录
  • 手动建目录后出现TAR_ENTRY_ERROR/EBADF/UNKNOWN写入警告:npm解压依赖tar包时,刚写入的临时文件会被同步盘立刻锁定准备上传,npm拿不到有效文件写入权限,写入流程中途中断
  • 运行代码报TypeError: axios.get is not a function:写入中断导致node_modules下的所有依赖文件都是空文件,require引入的axios是个空对象,自然不存在get方法
修复操作
  1. 将整个项目文件夹从同步盘路径移出,放到纯本地磁盘的非同步目录下,比如G:\NodeProjects\axios-test,不要放在任何云同步盘(OneDrive、iCloud Drive、各类国产云同步盘同理)目录下执行npm相关操作。
  2. 打开命令行进入移动后的项目目录,执行命令清理之前安装产生的异常残留:
    # Windows环境下删除异常依赖目录和锁文件
    rd /s /q node_modules
    del package-lock.json
    
  3. 重新执行依赖安装命令:
    npm install axios
    
    正常安装过程不会再出现tar写入类警告,安装完成后可以查看node_modules/axios/index.js的文件大小,不是0KB就说明依赖写入正常。
  4. 执行测试代码即可正常运行:
    node request.js
    
补充说明

手动执行mkdir创建node_modules目录的操作本身没有错误,但完全解决不了问题——云同步盘拦截文件写入的底层冲突不解决,不管重复删除重装多少次依赖,最终写入的文件都会是空的。

内容的提问来源于stack exchange,提问作者ben_11

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 11:31:11