npm 错误!尝试获取 https://registry.npmjs.org/react-is 时的响应超时(超过 30000 毫秒)

IT技术 reactjs npm create-react-app npm-install npm-scripts
2021-04-26 11:23:10

当我想创建一个 React 应用程序时,我遇到了以下错误:

npm ERR! Response timeout while trying to fetch https://registry.npmjs.org/react-is (over 30000ms)

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\info\AppData\Roaming\npm-cache\_logs\2020-04-23T02_54_45_865Z-debug.log

Aborting installation.
  npm install --save --save-exact --loglevel error react react-dom react-scripts cra-template has failed.

Deleting generated file... package.json
Deleting app2/ from C:\Users\info
Done.
4个回答

听起来你的连接速度很慢。通过将其添加到您的.npmrc文件中,尝试将超时从 30 秒增加到 60 秒

timeout=60000

您也可以尝试添加

prefer-offline=true

如果您正在尝试节省带宽或连接速度较慢

注意:如果你还没有.npmrc设置文件,你可以在这里创建一个

  • 对于 Windows: C:\Users\{username}\.npmrc
  • 适用于 Mac/Linux ~/.npmrc

或者您可以在与项目package.json文件相同的目录中创建一个

我的连接速度很慢,我将超时值更新为.npmrc使用:

npm set timeout=100000

并检查值是否更新(Mac): vi ~/.npmrc

如果用户的 Internet 连接速度较慢,则他们极有可能遇到此问题。为了解决这个问题,您需要增加 npm 配置文件中的超时时间。这是如何做到的:

  1. 找到该.npmrc文件(位于 nodejs 安装文件夹中;在我的情况下,它在F:\Installations\nodejs\node_modules\npm文件夹中。但对您来说,它可能在C:\program files文件夹中)。
  2. 打开.npmrc文件并附加这一行:(timeout=240000我想通常是 60 秒,但由于我的连接速度较慢,因此我不得不将其增加到 240 秒或 4 分钟,您可以将其保持 120000 120 秒)
  3. 保存文件

由于 create-react-app 中途失败,它很容易破坏 npm 的 package.json 文件,从而导致此类问题:

Unexpected end of JSON input while parsing near

因此,在运行之前npx create-react-app,运行以下命令:npm cache clean --force因为它会清理缓存并(我认为)修复package.json文件。

我面临同样的问题。我是这样解决的:创建一个没有名称的新文件只是 .npmrc 的消失在任何编辑器中打开这个文件并输入 timeout = 90000 保存文件并在你的终端中输入

npm cache clean --force
npm install create-react-app
npx create-react-app ./

注意:这个错误是因为网速慢