NuGet.org 概述

NuGet.org 是 NuGet 包的公共主机,每天由数百万 .NET 和 .NET Core 开发人员使用。

NuGet 生态系统中 NuGet.org 的角色

在作为公共主机的角色中,NuGet.org 自身在 nuget.org 维护超过 100,000 个唯一包的中央存储库。NuGet.org 不是包的唯一可能的主机。 NuGet 技术还使你能够在云(例如 Azure DevOps 上)、专用网络上甚至只托管本地文件系统中的包。 如果您对其他托管服务或托管选项感兴趣,请参阅“托管自己的 NuGet 源”

NuGet.org 与 NuGet 包的任何主机一样,充当包 创建者和使用者之间的连接点。 创建者生成有用的 NuGet 包并发布它们。 然后,使用者在可访问的主机上搜索有用且兼容的包,下载这些包并将其包含在其项目中。 在项目中安装后,包的 API 可供项目代码的其余部分使用。

包创建者、包主机和包使用者之间的关系

Accounts

若要在 NuGet.org 上发布包,请先创建 单个(用户)帐户。 这将成为 NuGet.org 上的标识。

NuGet.org 还允许你创建 组织帐户。 组织帐户具有一个或多个个人帐户作为其成员。 成员可以管理一组包,同时维护单一身份的所有权。 通过个人帐户,你可以成为任意数量的组织的成员。

软件包可以属于一个组织帐户,就像它可以属于个人帐户一样。 包使用者看不到单个帐户或组织帐户之间的任何差异:两者都显示为包 owners

API 密钥

发布 NuGet 包(.nupkg 文件)后,可以使用 nuget.exe CLI 或 dotnet.exe CLI 将其发布到 NuGet.org,以及从 NuGet.org 获取的 API 密钥

发布包时,请在 CLI 命令中包含 API 密钥值。

受信任的发布

NuGet.org 支持 受信任的发布,这是发布 NuGet 包的安全且简化的方法。

ID 前缀

发布包时,可以通过 保留 ID 前缀来保留和保护标识。 安装包时,会向包使用者提供其他信息,指示它们使用的包在其标识属性中并不欺骗。

用于 NuGet.org 的 API 终结点

若要将 NuGet.org 用作 NuGet 客户端的包存储库,应使用以下 V3 API 终结点:

https://api.nuget.org/v3/index.json

旧客户端仍可以使用 V2 协议访问 NuGet.org。但是,请注意,NuGet 客户端 3.0 或更高版本使用 V2 协议的较慢且不太可靠的服务:

https://www.nuget.org/api/v2V2 协议已弃用!