| title | 服务索引,NuGet API |
|---|---|
| description | 服务索引是 NuGet HTTP API 的入口点,并枚举服务器的功能。 |
| author | joelverhagen |
| ms.author | jver |
| ms.date | 10/26/2017 |
| ms.topic | reference |
| ms.reviewer | kraigb |
| ms.openlocfilehash | 1dcfb87690b728280b494d4434f9c1d7ee7a7e74 |
| ms.sourcegitcommit | 6ea2ff8aaf7743a6f7c687c8a9400b7b60f21a52 |
| ms.translationtype | MT |
| ms.contentlocale | zh-CN |
| ms.lasthandoff | 01/16/2019 |
| ms.locfileid | 54324716 |
服务索引是一个 JSON 文档是 NuGet 包源的入口点,并允许客户端实现,若要了解包源的功能。 服务索引是一个具有两个必需属性的 JSON 对象: version (服务索引的架构版本) 和resources(终结点或功能的包源)。
nuget.org 的服务索引位于https://api.nuget.org/v3/index.json。
version值是 SemVer 2.0.0 版本解析,因此字符串指示服务索引的架构版本。 API 要求的版本字符串有主版本号的3。 服务索引架构做出非重大更改后,会增加版本字符串的次要版本。
服务索引的每个资源是版本控制独立于服务索引的架构版本。
当前架构版本是3.0.0。 3.0.0版本在功能上等效于较旧3.0.0-beta.1版本但只是首选,因为它更清楚地传达稳定、 定义架构。
服务索引是使用 HTTP 方法可以访问GET和HEAD。
resources属性包含此包源支持的资源数组。
资源是中的对象resources数组。 它表示包源的版本控制功能。 每个资源有以下属性:
| name | 类型 | 必需 | 说明 |
|---|---|---|---|
| @id | 字符串 | 是 | 资源的 URL |
| @type | 字符串 | 是 | 一个字符串常数,表示资源类型 |
| 注释 | 字符串 | 否 | 资源的人工可读说明 |
@id是 URL 必须是绝对路径,并且必须具有 HTTP 或 HTTPS 架构。
@type用于标识要与资源交互时使用的特定协议。 资源类型是不透明的字符串,但通常采用格式:
{RESOURCE_NAME}/{RESOURCE_VERSION}
客户端应进行硬编码@type他们了解并查找包源的服务索引中的值。 确切@type枚举中列出的单个资源引用文档上目前所用的值API 概述。
本文档中,为不同的资源有关的文档将实质上是按分组{RESOURCE_NAME}它类似于按方案进行分组的服务索引中找到。
没有任何要求每个资源具有一个唯一@id或@type。 负责要确定哪些资源通过另一个首选的客户端实现。 一个可能的实现是相同或兼容的资源@type可以以轮循机制方式发生连接故障或服务器错误时使用。
GET https://api.nuget.org/v3/index.json
[!code-JSON service-index.json]