使用英语阅读

通过


速率限制

NuGet.org API 会强制实施速率限制以防止滥用。 超过速率限制的请求会返回以下错误:

  {
    "statusCode": 429,
    "message": "Rate limit is exceeded. Try again in 56 seconds."
  }

除使用速率限制来请求限制外,某些 API 还会强制实施配额。 超过配额的请求会返回以下错误:

  {
    "statusCode": 403,
    "message": "Quota exceeded."
  }

下表列出了 NuGet.org API 的速率限制。

备注

建议使用 NuGet.org 的 V3 搜索 API,因为它当前没有速率限制。 对于 V1 和 V2 搜索 API,会应用以下限制:

API 限制类型 限制值 API 用例
GET /api/v1/Packages IP 1,000 次/分钟 通过 v1 OData Packages 集合查询 NuGet 包元数据
GET /api/v1/Search() IP 3,000 次/分钟 通过 v1 搜索终结点搜索 NuGet 包
GET /api/v2/Packages IP 20,000 次/分钟 通过 v2 OData Packages 集合查询 NuGet 包元数据
GET /api/v2/Packages/$count IP 100 次/分钟 通过 v2 OData Packages 集合查询 NuGet 包计数

包推送和取消列出

API 限制类型 限制值 API 用例
PUT /api/v2/package API 密钥 350/小时 通过 v2 推送终结点上传新的 NuGet 包(版本)
DELETE /api/v2/package/{id}/{version} API 密钥 250/小时 通过 v2 终结点取消列出 NuGet 包(版本)

nuget.org 网站页面视图

如果要以编程方式访问 nuget.org 网页,请考虑研究我们已记录的 V3 API。 这些终结点允许对包元数据和内容进行更轻松的访问。 V3 API 的可用性更好且性能优于访问 NuGet 库网页,而这些网页专为 Web 浏览器交互而设计。

API 限制类型 限制值 API 用例
GET /package/{id}/{version} IP 50 次/分钟 显示包(版本)详细信息页面。