调用CreateListener创建HTTP、HTTPS或QUIC监听。

调试

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

请求参数

名称 类型 是否必选 示例值 描述
Action String CreateListener

要执行的操作。

取值:CreateListener

LoadBalancerId String lb-bp1o94dp5i6ea****

负载均衡实例ID。

ClientToken String 5A2CFF0E-5718-45B5-9D4D-70B3FF3898

保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。

DryRun Boolean true

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

  • true:发送检查请求,不会创建资源。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码DryRunOperation
  • false(默认值):发送正常请求,通过检查后返回HTTP_2xx状态码并直接进行操作。
ListenerProtocol String HTTP

监听协议。

取值:HTTPHTTPSQUIC

ListenerPort Integer 80

负载均衡实例前端使用的端口。

取值:1~65535

ListenerDescription String test

设置监听的描述信息。

长度为2~256个字符,必须是中文和无害字符串中的字符:/^([^\x00-\xff]|[\w.,;/@-]){2,256}$/

RequestTimeout Integer 6

指定请求超时时间。

取值:1~180秒。

默认值:60秒。

如果在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,并给客户端返回 HTTP 504 错误码。

IdleTimeout Integer 3

指定连接空闲超时时间。

取值范围:1~60秒。

默认值:15秒。

如果在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。

GzipEnabled Boolean false

是否开启Gzip压缩,对特定文件类型进行压缩。

取值:truefalse

默认值:true

Http2Enabled Boolean false

是否开启HTTP/2特性。

取值:truefalse

默认值:true

说明 仅HTTPS监听支持此参数。
SecurityPolicyId String tls_cipher_policy_1_0

安全策略ID。支持系统安全策略和自定义安全策略。

默认值:tls_cipher_policy_1_0(系统安全策略)。

说明 仅HTTPS监听支持此参数。
XForwardedForConfig Object

XForward字段配置信息。

XForwardedForClientCertClientVerifyAlias String test_client-verify-alias_123456

自定义头名称,只有当XForwardedForClientCertClientVerifyEnabled的值为true的时候,此值才会生效;否则该值不会生效。

取值:1~40个字符。支持字母a~z、短划线(-)、下划线(_)和数字。

说明 仅HTTPS监听支持此参数。
XForwardedForClientCertClientVerifyEnabled Boolean true

是否通过X-Forwarded-Clientcert-clientverify头字段获取对访问负载均衡实例客户端证书的校验结果。

取值:truefalse

默认值:false

说明 仅HTTPS监听支持此参数。
XForwardedForClientCertFingerprintAlias String test_finger-print-alias_123456

自定义头名称,只有当XForwardedForClientCertFingerprintEnabled的值为true时生效。

取值:1~40个字符。支持字母a~z、短划线(-)、下划线(_)和数字。

说明 仅HTTPS监听支持此参数。
XForwardedForClientCertFingerprintEnabled Boolean true

是否通过X-Forwarded-Clientcert-fingerprint头字段获取访问负载均衡实例客户端证书的指纹取值。

取值:truefalse

默认值:false

说明 仅HTTPS监听支持此参数。
XForwardedForClientCertIssuerDNAlias String test_issue-dn-alias_123456

自定义头名称,只有当XForwardedForClientCertIssuerDNEnabled的值为On的时候,此值才会生效。

取值:1~40个字符。支持字母a~z、短划线(-)、下划线(_)和数字。

说明 仅HTTPS监听支持此参数。
XForwardedForClientCertIssuerDNEnabled Boolean true

是否通过X-Forwarded-Clientcert-issuerdn头字段获取访问负载均衡实例客户端证书的发行者信息。

取值:truefalse

默认值:false

说明 仅HTTPS监听支持此参数。
XForwardedForClientCertSubjectDNAlias String test_subject-dn-alias_123456

自定义头名称,只有当XForwardedForClientCertSubjectDNEnabled的值为true时,此值才会生效。

取值:1~40个字符。支持字母a~z、短划线(-)、下划线(_)和数字。

说明 仅HTTPS监听支持此参数。
XForwardedForClientCertSubjectDNEnabled Boolean true

是否通过X-Forwarded-Clientcert-subjectdn头字段获取访问负载均衡实例客户端证书的所有者信息。

取值:truefalse

默认值:false

说明 仅HTTPS监听支持此参数。
XForwardedForClientSrcPortEnabled Boolean true

是否通过X-Forwarded-Client-Port头字段获取访问负载均衡实例客户端的端口。

取值:truefalse

默认值:false

说明 HTTP和HTTPS监听支持此参数。
XForwardedForEnabled Boolean true

是否开启通过X-Forwarded-For头字段获取来访者真实 IP。

取值:truefalse

默认值:true

说明 HTTP和HTTPS监听支持此参数。
XForwardedForProtoEnabled Boolean true

是否通过X-Forwarded-Proto头字段获取负载均衡实例的监听协议。

取值:truefalse

默认值:false

说明 HTTP、HTTPS和QUIC监听支持此参数。
XForwardedForSLBIdEnabled Boolean true

是否通过SLB-ID头字段获取负载均衡实例ID。

取值:truefalse

默认值:false

说明 HTTP、HTTPS和QUIC监听支持此参数。
XForwardedForSLBPortEnabled Boolean true

是否通过X-Forwarded-Port头字段获取负载均衡实例的监听端口。

取值:truefalse

默认值:false

说明 HTTP、HTTPS和QUIC监听支持此参数。
QuicConfig Object

配置关联的QUIC监听。

QuicListenerId String lsr-bp1bpn0kn908w4nbw****

需要关联的QUIC监听ID。HTTPS监听时有效。QuicUpgradeEnabledtrue时必选。

说明 原始监听和关联的QUIC监听必须属于同一个ALB实例,并且此QUIC监听之前没有被关联过。
QuicUpgradeEnabled Boolean true

是否开启QUIC升级。

取值:truefalse

默认值:false

说明 仅HTTPS监听支持此参数。
Certificates Array

证书。

CertificateId String 12315790212_166f8204689_1714763408_70998****

证书ID,当前仅支持服务器证书。

DefaultActions Array

规则动作列表。

ForwardGroupConfig Object

转发Action对应的配置。Type为FowardGroup时必填且有效。

ServerGroupTuples Array

转发目标服务器元组。

ServerGroupId String rsp-cige6j****

转发到的目的服务器组ID。

Type String ForwardGroup

动作类型。

取值:ForwardGroup,表示转发至多个虚拟服务器组。

返回数据

名称 类型 示例值 描述
JobId String 72dcd26b-f12d-4c27-b3af-18f6aed5****

异步任务ID。

ListenerId String lsr-bp1bpn0kn908w4nbw****

监听ID。

RequestId String CEF72CEB-54B6-4AE8-B225-F876FF7BA984

请求ID。

示例

请求示例

http(s)://[Endpoint]/?Action=CreateListener
&LoadBalancerId=lb-bp1o94dp5i6ea****
&ClientToken=5A2CFF0E-5718-45B5-9D4D-70B3FF3898
&DryRun=true
&ListenerProtocol=HTTP
&ListenerPort=80
&ListenerDescription=test
&RequestTimeout=6
&IdleTimeout=3
&GzipEnabled=false
&Http2Enabled=false
&SecurityPolicyId=tls_cipher_policy_1_0
&XForwardedForConfig={"XForwardedForClientCertClientVerifyAlias":"test_client-verify-alias_123456","XForwardedForClientCertClientVerifyEnabled":true,"XForwardedForClientCertFingerprintAlias":"test_finger-print-alias_123456","XForwardedForClientCertFingerprintEnabled":true,"XForwardedForClientCertIssuerDNAlias":"test_issue-dn-alias_123456","XForwardedForClientCertIssuerDNEnabled":true,"XForwardedForClientCertSubjectDNAlias":"test_subject-dn-alias_123456","XForwardedForClientCertSubjectDNEnabled":true,"XForwardedForClientSrcPortEnabled":true,"XForwardedForEnabled":true,"XForwardedForProtoEnabled":true,"XForwardedForSLBIdEnabled":true,"XForwardedForSLBPortEnabled":true}
&QuicConfig={"QuicListenerId":"lsr-bp1bpn0kn908w4nbw****","QuicUpgradeEnabled":true}
&Certificates=[{"CertificateId":"12315790212_166f8204689_1714763408_70998****"}]
&DefaultActions=[{"ForwardGroupConfig":{"ServerGroupTuples":[{"ServerGroupId":"rsp-cige6j****"}]},"Type":"ForwardGroup"}]
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<CreateListenerResponse>
    <JobId>72dcd26b-f12d-4c27-b3af-18f6aed5****</JobId>
    <ListenerId>lsr-bp1bpn0kn908w4nbw****</ListenerId>
    <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>
</CreateListenerResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "JobId" : "72dcd26b-f12d-4c27-b3af-18f6aed5****",
  "ListenerId" : "lsr-bp1bpn0kn908w4nbw****",
  "RequestId" : "CEF72CEB-54B6-4AE8-B225-F876FF7BA984"
}

错误码

HttpCode 错误码 错误信息 描述
400 ResourceAlreadyExist.Listener The specified resource %s is already exist. 资源%s已存在。
400 IncorrectStatus.LoadBalancer The status of %s [%s] is incorrect. 资源%s [%s]的状态无效。
400 IncorrectBusinessStatus.LoadBalancer The business status of %s [%s]  is incorrect. 资源%s [%s]的业务状态无效。
400 ResourceQuotaExceeded.LoadBalancerListenersNum The quota of %s is exceeded for resource %s, usage %s/%s. 配额%s已超额度限制,资源是%s,目前已使用%s,配额为%s。
400 OperationDenied.CrossLoadBalancerQUICListener The operation is not allowed because of %s. 操作被拒绝,原因是%s。
400 ResourceAlreadyAssociated.Listener The specified resource %s is already associated. 资源%s已被关联。
400 ResourceQuotaExceeded.SecurityPolicyAttachedNum The quota of %s is exceeded for resource %s, usage %s/%s. 配额%s已超额度限制,资源是%s,目前已使用%s,配额为%s。
400 ResourceQuotaExceeded.ServerGroupAttachedNum The quota of %s is exceeded for resource %s, usage %s/%s. 配额%s已超额度限制,资源是%s,目前已使用%s,配额为%s。
400 ResourceQuotaExceeded.LoadBalancerServersNum The quota of %s is exceeded for resource %s, usage %s/%s. 配额%s已超额度限制,资源是%s,目前已使用%s,配额为%s。
400 ResourceQuotaExceeded.ServerAddedNum The quota of %s is exceeded for resource %s, usage %s/%s. 配额%s已超额度限制,资源是%s,目前已使用%s,配额为%s。
400 Mismatch.VpcId The %s is mismatched for %s and %s. %s在%s和%s中不匹配。
400 OperationDenied.ServerGroupProtocolNotSupport The operation is not allowed because of ServerGroupProtocolNotSupport. 操作被拒绝,原因是ServerGroupProtocolNotSupport。
404 ResourceNotFound.LoadBalancer The specified resource %s is not found. 资源%s不存在。
404 ResourceNotFound.ServerGroup The specified resource %s is not found. 资源%s不存在。
404 ResourceNotFound.SecurityPolicy The specified resource %s is not found. 资源%s不存在。
404 ResourceNotFound.Listener The specified resource %s is not found. 资源%s不存在。
404 ResourceNotFound.Certificate The specified resource %s is not found. 资源%s不存在。

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