
# 查询转发规则
#### 功能介绍
查询转发规则。支持过滤查询和分页查询。如未特殊说明，匹配规则为精确匹配。
#### 接口约束
分页查询使用的参数为marker、limit、page_reverse。marker和page_reverse只有和limit一起使用时才会生效，单独使用无效。
#### URI
GET /v2.0/lbaas/l7policies/{l7policy_id}/rules
表1参数说明 
| 参数          | 是否必选 | 参数类型   | 描述      |
|:---|:---|:---|:---|
| l7policy_id | 是    | String | 转发策略ID。 |
   
#### 请求消息
表2请求参数 
| 参数                  | 是否必选 | 参数类型                                           | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| marker              | 否    | String                                         | 分页查询的起始的资源ID，表示上一页最后一条查询记录的转发规则的ID。 必须与limit一起使用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| limit               | 否    | Integer                                        | 分页查询每页的转发规则个数。如果不设置，则默认不分页查询所有。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| page_reverse        | 否    | Boolean                                        | 分页的顺序，true表示从后往前分页，false表示从前往后分页，默认为false。 必须与limit一起使用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| id                  | 否    | String                                         | 转发规则ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| tenant_id           | 否    | String                                         | 转发规则所在的项目ID。 支持的最大字符长度：255                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| project_id          | 否    | String                                         | 此参数和tenant_id参数含义一样，均指转发规则所在的项目ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| admin_state_up      | 否    | Boolean                                        | 转发规则的管理状态； 该字段为预留字段，暂未启用。默认为true。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| type                | 否    | String                                         | 转发规则的匹配类型。 取值范围： - HOST_NAME：匹配请求中的域名；  - PATH：匹配请求中的路径；   同一个转发策略下转发规则的type不能重复。                                                                                                                                                                                                                                                    |
| compare_type        | 否    | String                                         | 转发匹配方式： type为HOST_NAME时，取值范围： - EQUAL_TO：精确匹配；   type为PATH时，取值范围： - REGEX：正则匹配；  - STARTS_WITH：前缀匹配；  - EQUAL_TO：精确匹配。   |
| invert              | 否    | Boolean                                        | 是否反向匹配； 取值范围：true/false。默认值：false； 该字段为预留字段，暂未启用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| key                 | 否    | String                                         | 匹配内容的键值。默认为null。 该字段为预留字段，暂未启用。 支持的最大字符长度：255                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| value               | 否    | String  | 匹配内容的值。 支持的最大字符长度：128 - 当type为HOST_NAME时，取值范围：String (100)，字符串只能包含英文字母、数字、"-"或"."，且必须以字母或数字开头。  - 当type为PATH时，取值范围：String (128)。当转发规则的compare_type为STARTS_WITH、EQUAL_TO时，字符串只能包含英文字母、数字、_\~';@\^-%#\&$.\*+?,=!:\| \\/()\[\]{}，且必须以"/"开头。                                                                                              |
| provisioning_status | 否    | String                                         | 该字段为预留字段，暂未启用。 转发规则的配置状态，可以为ACTIVE。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   
#### 响应消息
表3响应参数 
| 参数          | 参数类型  | 描述                                                                                                                                                 |
|:---|:---|:---|
| rules       | Array | 转发规则对象列表。详见[表4]。                                                                                             |
| rules_links | Array | 转发规则的分页查询中上下页的链接信息。 仅当分页查询时响应体中有该字段。 详见[表5]。 |
   
 表4rules字段说明 
| 参数                  | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| id                  | String  | 转发规则ID                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| tenant_id           | String  | 转发规则所在的项目ID。 支持的最大字符长度：255                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| project_id          | String  | 此参数和tenant_id参数含义一样，均指转发规则所在的项目ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| admin_state_up      | Boolean | 转发规则的管理状态； 该字段为预留字段，暂未启用。取值范围：true/false。 - true表示开启。  - false表示关闭。                                                                                                                                                                      |
| type                | String  | 转发规则的匹配类型。 取值范围： - HOST_NAME：匹配请求中的域名；  - PATH：匹配请求中的路径；                                                                                                                                                                                                                                                                     |
| compare_type        | String  | 转发匹配方式： type为HOST_NAME时，取值范围： - EQUAL_TO：精确匹配；   type为PATH时，取值范围： - REGEX：正则匹配；  - STARTS_WITH：前缀匹配；  - EQUAL_TO：精确匹配。   |
| invert              | Boolean | 是否反向匹配； 取值范围：true/false。默认值：false； 该字段为预留字段，暂未启用。                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| key                 | String  | 匹配内容的键值。默认为null。 该字段为预留字段，暂未启用。 支持的最大字符长度：255                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| value               | String  | 匹配内容的值。 支持的最大字符长度：128 - 当type为HOST_NAME时，取值范围：String (100)，字符串只能包含英文字母、数字、"-"或"."，且必须以字母或数字开头。  - 当type为PATH时，取值范围：String (128)。当转发规则的compare_type为STARTS_WITH、EQUAL_TO时，字符串只能包含英文字母、数字、_\~';@\^-%#\&$.\*+?,=!:\| \\/()\[\]{}，且必须以"/"开头。                                                                                              |
| provisioning_status | String  | 该字段为预留字段，暂未启用。 转发规则的配置状态，可以为ACTIVE。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
   
 表5rules_links字段说明 
| 参数   | 参数类型   | 描述                                                                                                       |
|:---|:---|:---|
| href | String | 转发规则的分页查询中上下页的链接。                                                                                        |
| rel  | String | 上下页的提示信息。 取值范围：next、previous。next表示href是下一页的url，previous表示href是上一页的url。 |
   
#### 请求示例
- 请求样例 全量查询指定转发策略关联的转发规则
  ```
  GET https://{Endpoint}/v2.0/lbaas/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586/rules
  ```
  
 
#### 响应示例
- 响应样例
  ```
  {
      "rules": [
          {
              "compare_type": "EQUAL_TO", 
              "provisioning_status": "ACTIVE",
              "admin_state_up": true, 
              "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", 
              "project_id": "a31d2bdcf7604c0faaddb058e1e08819", 
              "invert": false, 
              "value": "www.test.com", 
              "key": null, 
              "type": "HOST_NAME", 
              "id": "67d8a8fa-b0dd-4bd4-a85b-671db19b2ef3"
          }, 
          {
              "compare_type": "EQUAL_TO",
              "provisioning_status": "ACTIVE", 
              "admin_state_up": true, 
              "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819",
              "project_id": "a31d2bdcf7604c0faaddb058e1e08819",
              "invert": false, 
              "value": "/aaa.html", 
              "key": null, 
              "type": "PATH", 
              "id": "f02b3bca-69d2-4335-a3fa-a8054e996213"
          }
      ]
      "rules_links": [
          {
          "href": "https://{Endpoint}/v2.0/lbaas/l7policies/061f461c-c7cf-47ab-9583-09be5076cd09/rules?marker=167c1a31-bc12-4c3d-9ad1-c9bf450df4ce&page_reverse=True",
          "rel": "previous"
          }
      ]
  }
  ```
  
 
#### 返回码
请参见[状态码](https://support.huaweicloud.com/api-elb/elb_gc_1102.html)。
