ERR! code E403 npm ERR! 403 403 Forbidden - PUT https://registry.npmjs.org/itheima-toolscxs - Forbid

在这里插入图片描述
出现这个原因是因为输入的邮箱📮没有校验,⚠️查看手机的邮箱的文件点击验证!!!

npm倒包的时候要注意⚠️
不能是镜像的

choigail@cuijiayideMacBook-Air ~ % nrm ls

  npm -------- https://registry.npmjs.org/
  yarn ------- https://registry.yarnpkg.com/
  cnpm ------- http://r.cnpmjs.org/
* taobao ----- https://registry.npm.taobao.org/
  nj --------- https://registry.nodejitsu.com/
  npmMirror -- https://skimdb.npmjs.com/registry/
  edunpm ----- http://registry.enpmjs.org/

像这样就是在淘宝镜像里面就不行,往npm上面传一定要在npm上面!


choigail@cuijiayideMacBook-Air ~ % nrm use npm

切换一下

choigail@cuijiayideMacBook-Air ~ 
### 解决NPM请求过多导致的429错误 当遇到`npm error 429 too many requests`时,这通常意味着客户端发送到 NPM 注册表的请求数量超过了允许的数量。为了缓解这个问题,可以采取几种方法来优化依赖管理和减少不必要的请求。 #### 使用本地缓存 通过配置 `.npmrc` 文件中的 `cache-min` 参数,可以让 npm 更长时间地保留包文件而不重新下载它们。这样即使网络连接不稳定也能加快安装速度并降低请求频率: ```bash cache-min=Infinity ``` 此设置告知 npm 只有在确实需要更新的时候才去检查远程仓库是否有新版本可用[^1]。 #### 减少并发度 调整全局环境变量 `MAX_SOCKETS` 或者是在命令行中指定最大套接字数目的参数 (`--maxsockets`) 来控制同一时间发起的最大 HTTP 连接数量。默认情况下这个数值较高,适当减小它有助于防止短时间内触发速率限制: ```bash npm config set maxsockets 5 # or run command directly with option npm install --maxsockets=5 ``` 这样做能够有效地平滑流量峰值从而避开限流机制[^2]。 #### 实施重试逻辑 对于偶尔发生的瞬态失败(例如短暂的服务不可达),可以在脚本里加入简单的指数退避算法实现自动重试功能。下面是一个基于 JavaScript 的例子展示如何优雅处理这类情况: ```javascript async function fetchWithRetry(url, options = {}) { const retries = 3; let attempt = 0; while (attempt++ < retries) { try { const response = await fetch(url, options); if (!response.ok && response.status === 429) throw new Error('Too Many Requests'); return response.json(); } catch(error){ console.error(`Attempt ${attempt} failed.`); if(attempt >= retries || error.message !== 'Too Many Requests') throw error; await sleep(Math.pow(2, attempt)*100); // Exponential backoff delay before next retry. } } } function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); } ``` 这段代码会在每次尝试之间等待更长的时间间隔再继续下一次尝试直到成功获取数据或达到最大重试次数为止[^3]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值