CreateAScripts - 创建可编程脚本

更新时间:
复制为 MD 格式

创建可编程脚本。

接口说明

前提条件

  • 已创建标准版或 WAF 增强版 ALB 实例。具体操作,请参见 CreateLoadBalancer

使用说明

CreateAScripts 接口属于异步接口,即系统返回一个请求 ID,但该可编程脚本尚未创建成功,系统后台的创建任务仍在进行。您可以调用 ListAScripts 查询可编程脚本的创建状态:

  • 当可编程脚本处于 Creating 状态时,表示可编程脚本正在创建中。

  • 当可编程脚本处于 Available 状态时,表示可编程脚本创建成功。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。

  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。

  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:

    • 对于必选的资源类型,用前面加 * 表示。

    • 对于不支持资源级授权的操作,用全部资源表示。

  • 条件关键字:是指云产品自身定义的条件关键字。

  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。

操作

访问级别

资源类型

条件关键字

关联操作

alb:CreateAScripts

create

*LoadBalancer

acs:alb:{#regionId}:{#accountId}:loadbalancer/{#loadbalancerId}

请求参数

名称

类型

必填

描述

示例值

ClientToken

string

客户端 Token,用于保证请求的幂等性。

从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符。

5A2CFF0E-5718-45B5-9D4D-70B******

DryRun

boolean

是否只预检此次请求。取值:

  • true:发送检查请求,不会创建可编程脚本。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码DryRunOperation

  • false(默认值):发送正常请求,通过检查后返回 HTTP 2xx 状态码并直接进行操作。

false

ListenerId

string

监听 ID。

lsn-6hfq3zs0x04ibn****

AScripts

array<object>

可编程脚本信息列表。

array<object>

可编程脚本信息。

AScriptName

string

可编程脚本名称。

长度为 2~128 个英文或中文字符,必须以大小写英文字母或中文开头,可包含数字,半角句号(.),下划线(_)和短划线(-)。

test

Position

string

可编程脚本执行位置。

  • RequestHead(默认值):请求方向规则执行前。

  • RequestFoot:请求方向规则执行后。

  • ResponseHead:响应方向规则执行前。

RequestFoot

Enabled

boolean

是否启用可编程脚本。取值:

  • true:启用。

  • false(默认值):不启用。

false

ScriptContent

string

可编程脚本内容。

if and(match_re($uri, '^/1.txt$'), $arg_type) { rewrite(concat('/1.', $arg_type), 'break') }

ExtAttributes

array<object>

扩展属性。

object

AttributeKey

string

Ascript 脚本的属性名称。

仅取值 EsDebug:当请求携带_es_dbg 参数,且值为此处配置的密钥时,开启相应的调试响应头,以输出规则执行记录。

EsDebug

AttributeValue

string

属性值,大小写英文字母或数字,长度为 1~128 个字符。

test123

ExtAttributeEnabled

boolean

是否启用可编程脚本扩展属性。取值:

  • true:启用。

  • false(默认值):不启用。

true

返回参数

名称

类型

描述

示例值

object

创建可编程脚本。

JobId

string

异步任务 ID。

5c607642-535e-4e06-9d77-df53049b****

RequestId

string

请求 ID。

BF0FE763-9603-558F-A55B-0F4******

AScriptIds

array<object>

可编程脚本 ID 列表。

object

可编程脚本 ID。

AScriptId

string

可编程脚本 ID。

as-xvq5igaa7uv6vr****

示例

正常返回示例

JSON格式

{
  "JobId": "5c607642-535e-4e06-9d77-df53049b****",
  "RequestId": "BF0FE763-9603-558F-A55B-0F4******",
  "AScriptIds": [
    {
      "AScriptId": "as-xvq5igaa7uv6vr****"
    }
  ]
}

错误码

HTTP status code

错误码

错误信息

描述

400 IncorrectStatus.Listener The status of %s [%s] is incorrect. 监听的当前状态不支持本次操作。
400 ResourceQuotaExceeded.AScriptsNum The quota of %s is exceeded for resource %s, usage %s/%s. 配额%s已超额度限制,目前已使用%s,配额为%s。
400 ResourceQuotaExceeded.AScriptsTotalLinesNum The quota of %s is exceeded for resource %s, usage %s/%s. 配额%s已超额度限制,目前已使用%s,配额为%s。
400 ResourceQuotaExceeded.AScriptLinesNum The quota of %s is exceeded for resource %s, usage %s/%s. 配额%s已超额度限制,目前已使用%s,配额为%s。

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情