首页 > 解决方案 > .npmrc 中以双斜杠“//”开头的行是什么意思?

问题描述

我天真地假设带有双斜杠 ('//') 的 .npmrc 行表示注释,但显然情况并非如此,因为当我删除它们时,我无法发布到我的本地注册表。

例子:

registry=https://npm.myregistry.io/
//email=me@mydomain.com
//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 模块解析器文档中找不到对此语法的任何引用。我假设它与合成属性有关?

标签: node.jsnpm

解决方案


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

ini 语法是key = value. 所以在这种情况下,关键是//npm.myregistry.io/:_authToken

这是一个相对于协议的 URL,意思是一个从当前页面自动获取协议的 URL(您实际上可以//google.com在浏览器中键入,它应该带您到https://google.com

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


推荐阅读