Skip to main content
Version: V5.17

创建网关策略

基本信息

该接口主要用于创建网关策略

请求路径
POST /openapi/v1/teams/{team_id}/regions/{region_name}/apps/{app_id}/domains
Body 请求体示例
{
"protocol": "string",
"tcp": {
"container_port": 3,
"service_id": "string",
"end_point": "string",
"rule_extensions": [
{
"key": "string",
"value": "string"
}
],
"default_port": 3,
"default_ip": "string"
},
"http": {
"service_id": "string",
"container_port": 3,
"certificate_id": 0,
"domain_name": "string",
"domain_cookie": "string",
"domain_header": "string",
"the_weight": 3,
"domain_path": "/",
"rule_extensions": [
"string"
],
"whether_open": false,
"auto_ssl": false,
"auto_ssl_config": "string",
"configuration": {
"proxy_body_size": 0,
"proxy_buffer_numbers": 4,
"proxy_buffer_size": 4,
"proxy_buffering": "off",
"proxy_connect_timeout": 75,
"proxy_read_timeout": 60,
"proxy_send_timeout": 60,
"set_headers": [
{
"key": "string",
"value": "string"
}
]
}
}
}

请求参数

名称位置类型必选中文名说明
team_idpathstringnone
region_namepathstringnone
app_idpathstringnone
bodybodyPostGatewayRulenone

返回结果

状态码状态码含义说明数据模型
200OK成功GatewayRule

返回数据结构

响应示例
{
"http": [
{
"ID": 3,
"rule_extensions": [
"string"
],
"http_rule_id": "string",
"region_id": "string",
"tenant_id": "string",
"service_id": "string",
"service_name": "string",
"domain_name": "string",
"container_port": 3,
"protocol": "string",
"certificate_id": 3,
"domain_type": "string",
"service_alias": "string",
"is_senior": true,
"domain_path": "string",
"domain_cookie": "string",
"domain_heander": "string",
"type": 3,
"the_weight": 3,
"is_outer_service": true,
"auto_ssl": true,
"auto_ssl_config": "string",
"path_rewrite": true,
"rewrites": "string"
}
],
"tcp": [
{
"ID": 3,
"tcp_rule_id": "string",
"region_id": "string",
"tenant_id": "string",
"service_id": "string",
"service_name": "string",
"end_point": "string",
"protocol": "string",
"container_port": 3,
"service_alias": "string",
"type": 3,
"rule_extensions": "string",
"is_outer_service": true
}
]
}

模型

PostGatewayRule

{
"protocol": "string",
"tcp": {
"container_port": 0,
"service_id": "string",
"end_point": "string",
"rule_extensions": [
{
"key": "string",
"value": "string"
}
],
"default_port": 0,
"default_ip": "string"
},
"http": {
"service_id": "string",
"container_port": 0,
"certificate_id": 0,
"domain_name": "string",
"domain_cookie": "string",
"domain_header": "string",
"the_weight": 0,
"domain_path": "/",
"rule_extensions": [],
"whether_open": false,
"auto_ssl": false,
"auto_ssl_config": "string",
"configuration": {
"proxy_body_size": 0,
"proxy_buffer_numbers": 4,
"proxy_buffer_size": 4,
"proxy_buffering": "off",
"proxy_connect_timeout": 75,
"proxy_read_timeout": 60,
"proxy_send_timeout": 60,
"set_headers": [
{
"key": "string",
"value": "string"
}
]
}
}
}

属性

名称类型必选约束中文名说明
protocolstringtruenoneProtocol协议
tcpTcpfalsenonenone
httpHttpfalsenonenone

Tcp

{
"container_port": 0,
"service_id": "string",
"end_point": "string",
"rule_extensions": [
{
"key": "string",
"value": "string"
}
],
"default_port": 0,
"default_ip": "string"
}

属性

名称类型必选约束中文名说明
container_portintegertruenoneContainer port组件端口
service_idstringtruenoneService id组件id
end_pointstringtruenoneEnd pointip地址:端口
rule_extensions[PostTCPGatewayRuleExtensions]falsenone规则扩展
default_portintegertruenoneDefault port映射端口
default_ipstringtruenoneDefault ip映射id地址

PostTCPGatewayRuleExtensions

{
"key": "string",
"value": "string"
}

属性

名称类型必选约束中文名说明
keystringtruenoneKeynone
valuestringtruenoneValuenone

Http

{
"service_id": "string",
"container_port": 0,
"certificate_id": 0,
"domain_name": "string",
"domain_cookie": "string",
"domain_header": "string",
"the_weight": 0,
"domain_path": "/",
"rule_extensions": [],
"whether_open": false,
"auto_ssl": false,
"auto_ssl_config": "string",
"configuration": {
"proxy_body_size": 0,
"proxy_buffer_numbers": 4,
"proxy_buffer_size": 4,
"proxy_buffering": "off",
"proxy_connect_timeout": 75,
"proxy_read_timeout": 60,
"proxy_send_timeout": 60,
"set_headers": [
{
"key": "string",
"value": "string"
}
]
}
}

属性

名称类型必选约束中文名说明
service_idstringtruenoneService id应用组件id
container_portintegertruenoneContainer port绑定端口
certificate_idintegerfalsenoneCertificate id证书id
domain_namestringtruenoneDomain name域名
domain_cookiestringfalsenoneDomain cookie域名cookie
domain_headerstringfalsenoneDomain header域名header
the_weightintegerfalsenoneThe weightnone
domain_pathstringfalsenoneDomain path域名路径
rule_extensions[string]falsenone规则扩展
whether_openbooleanfalsenoneWhether open是否开放
auto_sslbooleanfalsenoneAuto ssl是否自动匹配证书,升级为https,如果开启,由外部服务完成升级
auto_ssl_configstringfalsenoneAuto ssl config自动分发证书配置
configurationConfigurationfalsenone高级参数配置

Configuration

{
"proxy_body_size": 0,
"proxy_buffer_numbers": 4,
"proxy_buffer_size": 4,
"proxy_buffering": "off",
"proxy_connect_timeout": 75,
"proxy_read_timeout": 60,
"proxy_send_timeout": 60,
"set_headers": [
{
"key": "string",
"value": "string"
}
]
}

属性

名称类型必选约束中文名说明
proxy_body_sizeintegerfalsenoneProxy body size请求主体大小
proxy_buffer_numbersintegerfalsenoneProxy buffer numbers缓冲区数量
proxy_buffer_sizeintegerfalsenoneProxy buffer size缓冲区大小
proxy_bufferingstringfalsenoneProxy buffering是否开启ProxyBuffer
proxy_connect_timeoutintegerfalsenoneProxy connect timeout连接超时时间
proxy_read_timeoutintegerfalsenoneProxy read timeout读超时时间
proxy_send_timeoutintegerfalsenoneProxy send timeout发送超时时间
set_headers[HTTPHeader]truenonenone

HTTPHeader

{
"key": "string",
"value": "string"
}

属性

名称类型必选约束中文名说明
keystringtruenoneKey请求头Key
valuestringtruenoneValue请求头Value