我很天真地认为带有双斜杠('//')的.npmrc行表示注释,但是事实并非如此,因为删除它们时,我无法发布到本地注册表。

例子:

registry=https://npm.myregistry.io/
//[email protected]
//npm.myregistry.io/:_authToken="Pgwb34F123EQdHqE7OoZA=="

如果删除以上//行,则将结果发布到

npm ERR! code ENEEDAUTH
npm ERR! need auth auth required for publishing
npm ERR! need auth You need to authorize this machine using `npm adduser`

我在npmrc文档或ini模块解析器文档中找不到对该语法的任何引用。我假设它与合成属性有关?

最佳答案

//.npmrc或任何其他.ini文件中没有特殊含义。

ini语法为key = value。因此,在这种情况下, key 为//npm.myregistry.io/:_authToken

这是Protocol-relative URL,表示一个URL,它将自动从当前页面获取协议(protocol)(您实际上可以在浏览器中键入//google.com,并且应该将您带到https://google.com)

请注意,这不一定是npm用于身份验证的URL。这只是开发人员选择的一种格式,用于将authToken(或其他值)与注册表URL包含在同一字符串中。

关于node.js - .npmrc中以双斜线 '//'开头的行是什么意思?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53267884/

10-09 16:58