如何修复 401 Unauthorized Private Github 包

How to fix 401 Unauthorized Private Github Package

我正在尝试将私有 Github 包安装到我正在处理的 Gatsby 项目中,该项目将部署到 Netlify,但我继续收到 401 Unauthorized...

当我添加内联令牌或使用我的 ~/.npmrc 文件时,它可以正常工作并安装,但在我使用本地环境变量时不起作用。

这是我的 .npmrc 文件...

//npm.pkg.github.com/:_authToken=$NPM_TOKEN
@OWNER:registry=https://npm.pkg.github.com/OWNER

注意

我也尝试过,但没有成功 -

//npm.pkg.github.com/:_authToken=${NPM_TOKEN}
@OWNER:registry=https://npm.pkg.github.com/OWNER

如何让我的环境变量在我的本地项目 .npmrc 文件中工作?

更新

我设法通过从 github.com 中删除多余的最后一个 / 使其在本地工作(如下所示),但这仍然无法修复 Netlify 方面的错误。

 - //npm.pkg.github.com/:_authToken=$NPM_TOKEN
 + //npm.pkg.github.com:_authToken=$NPM_TOKEN

如有任何帮助,我们将不胜感激。

我成功了,但我相信还有更好的方法...

.npmrc 必须是

让它在本地工作 -

//npm.pkg.github.com:_authToken=$READ_TOKEN
@OWNER:registry=https://npm.pkg.github.com/OWNER

但是 returns Netlify 上的 401 未经授权错误...

让它在 Netlify 上运行 -

//npm.pkg.github.com/:_authToken=${READ_TOKEN}
registry=https://npm.pkg.github.com/OWNER

但是同样这在本地不起作用...

目前我不得不根据我是在本地工作还是在生产中使用它来手动切换它们,但正如我所说,我认为必须有更好的方法来做到这一点。