使用 getAllConfigByTenant 接口获取指定命名空间内的 ACM 配置信息。

请求类型

GET

请求 URL

/diamond-server/basestone.do?method=getAllConfigByTenant

请求参数

参数 类型 是否必需 描述
tenant String 租户信息,对应 ACM 的命名空间 ID。
pageNo Integer 分页页号
pageSize Integer 分页大小

Header 参数

参数 类型 是否必需 描述
Spas-AccessKey String 在 ACM 控制台上的命名空间详情对话框内可获取 AccessKey。
timeStamp String 以毫秒为单位的请求时间。
Spas-Signature String 使用 SecretKey 对“Tenant+TimeStamp”签名(SpasSigner.sign(tenant+ timeStamp, secretKey)),签名算法为 HmacSHA1。TimeStamp 签名的作用是防止重放攻击。该签名有效期为 60 秒。
Spas-SecurityToken String SecurityToken 需从 STS 临时凭证中获取。STS 临时凭证需从实例元数据 URL 中获取。详情请参考:

返回参数

参数 类型 描述
totalCount Integer 总配置数
pageNumber Integer 分页页号
pagesAvailable Integer 可用分页数
pageItems Array 配置信息
└appName String 归属应用的名称
└dataId String 配置的 ID
└group String 配置的分组

错误码

错误码 错误信息 描述
400 Bad Request 客户端请求中的语法错误
403 Forbidden 没有权限
404 Not Found 客户端错误,未找到。
500 Internal Server Error 服务器内部错误

代码示例

  • 请求示例(Shell)

    #!/bin/bash
    ## config param
    namespace="04754ad1-4f67-4d67-b2bf-1f73a04a****"
    accessKey="8c5cbb849ae04682ad9f455a96aa****"
    secretKey="lwO5T7vfPJu27FclPa+/CyIG****"
    endpoint="acm.aliyun.com"
    ## config param end
    ## get serverIp from address server
    serverIp=`curl $endpoint:8080/diamond-server/diamond -s | awk '{a[NR]=$0}END{srand();i=int(rand()*NR+1);print a[i]}'`
    ## config sign
    timestamp=`echo $[$(date +%s%N)/1000000]`
    signStr=$namespace+$timestamp
    signContent=`echo -n $signStr | openssl dgst -hmac $secretKey -sha1 -binary | base64`
    ## request to get configs in a namespace
    curl -H "Spas-AccessKey:"$accessKey -H "timeStamp:"$timestamp -H "Spas-Signature:"$signContent "http://"$serverIp":8080/diamond-server/basestone.do?method=getAllConfigByTenant&tenant="$namespace"&pageNo="1"&pageSize="10 -v
    说明 由于 shell 脚本在 Windows 系统下编辑容易编码错误,建议在 Linux 系统里新建 shell 脚本文件,再将此段代码复制到文件中。
  • 返回示例(JSON)

    {
       "totalCount":4,
       "pageNumber":1,
       "pagesAvailable":1,
       "pageItems":[
          {
             "appName":"",
             "dataId":"com.alibaba.nacos.example01.properties",
             "group":"DEFAULT_GROUP"
          },
          {
             "appName":"",
             "dataId":"com.alibaba.nacos.example02.properties",
             "group":"DEFAULT_GROUP"
          },
          {
             "appName":"",
             "dataId":"com.alibaba.nacos.example03.properties",
             "group":"DEFAULT_GROUP"
          },
          {
             "appName":"",
             "dataId":"com.alibaba.nacos.example04.properties",
             "group":"DEFAULT_GROUP"
          }
       ]
    }

更多信息

API 概览