以下语法表示键资源:

{
    "name": [string]             // Name of the key
}

操作

键资源支持以下操作:

  • 列出

对于所有操作,name 为可选筛选器参数。 如果省略,则暗指任何键。

必备条件

  • 所有 HTTP 请求都必须经过身份验证。 请参阅身份验证部分。
  • 所有 HTTP 请求都必须提供显式的 api-version。 请参阅版本控制部分。

列出密钥

GET /keys?api-version={api-version} HTTP/1.1

响应:

HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.keyset+json; charset=utf-8"
{
    "items": [
        {
          "name": "{key-name}"
        },
        ...
    ],
    "@nextLink": "{relative uri}"
}

分页

如果返回的项数超过响应限制,则会对结果进行分页。 按照可选的 Link 响应标头进行操作并使用 rel="next" 进行导航。 也可让内容以 @nextLink 属性的形式提供下一个链接。 下一个链接包含 api-version 参数。

GET /keys?api-version={api-version} HTTP/1.1

响应:

HTTP/1.1 OK
Content-Type: application/vnd.microsoft.appconfig.keyset+json; charset=utf-8
Link: <{relative uri}>; rel="next"
{
    "items": [
        ...
    ],
    "@nextLink": "{relative uri}"
}

筛选

支持按 name 筛选。

GET /keys?name={key-name}&api-version={api-version}

支持以下筛选器:

键筛选器 效果
省略 namename=* 匹配任何键
name=abc 匹配名为“abc”的键
name=abc* 匹配以 abc 开头的键名称
name=abc,xyz 匹配键名称 abc 或 xyz(限制为 5 个 CSV)

保留以下字符:*\,

如果保留字符是值的一部分,则必须使用 \{Reserved Character} 对其进行转义。 非保留字符也可以进行转义。

筛选器验证

如果出现筛选器验证错误,则响应为“HTTP 400”,其错误详细信息如下:

HTTP/1.1 400 Bad Request
Content-Type: application/problem+json; charset=utf-8
{
  "type": "https://azconfig.io/errors/invalid-argument",
  "title": "Invalid request parameter 'name'",
  "name": "name",
  "detail": "name(2): Invalid character",
  "status": 400
}

示例

  • 全部

    GET /keys?api-version={api-version}
    
  • 键名称以“abc”开头

    GET  /keys?name=abc*&api-version={api-version}
    
  • 键名称为“abc”或“xyz”

    GET /keys?name=abc,xyz&api-version={api-version}
    

请求特定字段

使用可选的 $select 查询字符串参数,并提供所请求字段的逗号分隔列表。 如果省略 $select 参数,则响应会包含默认集。

GET /keys?$select=name&api-version={api-version} HTTP/1.1

基于时间的访问

获得结果在过去的表现形式。 请参阅 2.1.1 部分

GET /keys&api-version={api-version} HTTP/1.1
Accept-Datetime: Sat, 12 May 2018 02:10:00 GMT

响应:

HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.keyset+json"
Memento-Datetime: Sat, 12 May 2018 02:10:00 GMT
Link: <relative uri>; rel="original"
{
    "items": [
        ....
    ]
}