# npm hook

管理注册中心钩子

# 概要

npm hook add <pkg> <url> <secret> [--type=<type>]
npm hook ls [pkg]
npm hook rm <id>
npm hook update <id> <url> <secret>

注意

这个命令不支持工作空间。

# 描述

允许您管理 npm hooks,包括添加、删除、列出和更新。

钩子允许您配置 URL 端点,当任何受支持的实体类型发生更改时,这些端点将收到通知。钩子可以监视三种不同类型的实体: 包、所有者和作用域。

要创建一个包钩子,只需引用包的名称。

要创建所有者钩子,请在所有者名称前加上 ~(如,~youruser)。

要创建范围钩子,请在范围名称前加上 @(如, @yourscope)。

updaterm 使用的钩子 id 是在 npm hook ls 中列出的该特定钩子的 id

共享的秘钥将被发送到 URL 端点,这样您就可以验证请求来自您自己配置的钩子。

# 例子

添加一个钩子来观察一个包的变化:

$ npm hook add lodash https://example.com/ my-shared-secret

添加一个钩子来监视属于用户 substack 的包:

$ npm hook add ~substack https://example.com/ my-shared-secret

添加一个钩子来监视范围 @npm 中的包

$ npm hook add @npm https://example.com/ my-shared-secret

列出所有活动的钩子:

$ npm hook ls

列出 lodash 包的活动钩子:

$ npm hook ls lodash

更新现有钩子的 url:

$ npm hook update id-deadbeef https://my-new-website.here/

移除一个钩子:

$ npm hook rm id-deadbeef

# 配置

# registry

  • Default: "https://registry.npmjs.org/"
  • Type: URL

npm 注册中心的基本 URL。

# otp

  • Default: null
  • Type: null or String

这是来自双因素验证器的一次性密码。使用发布或更改包权限时需要使用 npm access

如果没有设置,注册中心响应会失败,并要求输入一次性密码,npm 将在命令行提示输入密码。

Last Updated: 4/25/2023, 9:49:29 AM