通过 npm 注册表 REST API 获取有关我的私有 npm 包的信息



我们可以通过 npm 注册表 REST api 获取公共包,使用以下 GET:

registry.npmjs.org/:package

当我尝试获取我的私有 npm 包时,这失败并显示 404 错误。

如何获取有关我的私有 npm 包的信息?要安装我的私有 npm 包,我使用令牌。我是否需要在 api 调用中包含此令牌?

在对 npm cli 源代码进行一些挖掘后,事实证明答案在于像这样设置授权标头:

const registryUrl = require('registry-url');
const request = require('superagent');
const url = require('url');
function registryPackage(name, opts, callback) {
request
.get(url.resolve(registryUrl(), name))
.set('Authorization', `Bearer ${opts.token}`)
.end(function(err, response) {
callback(err, response.body)
})
}
module.exports = registryPackage;

令牌是 npm 登录后 .npmrc 文件中的_authToken

最新更新