255 lines
8.8 KiB
C#
255 lines
8.8 KiB
C#
|
|
/*
|
|||
|
|
* Copyright (c) 2018 THL A29 Limited, a Tencent company. All Rights Reserved.
|
|||
|
|
*
|
|||
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|||
|
|
* you may not use this file except in compliance with the License.
|
|||
|
|
* You may obtain a copy of the License at
|
|||
|
|
*
|
|||
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|||
|
|
*
|
|||
|
|
* Unless required by applicable law or agreed to in writing,
|
|||
|
|
* software distributed under the License is distributed on an
|
|||
|
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|||
|
|
* KIND, either express or implied. See the License for the
|
|||
|
|
* specific language governing permissions and limitations
|
|||
|
|
* under the License.
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
namespace TencentCloud.Cdn.V20180606.Models
|
|||
|
|
{
|
|||
|
|
using Newtonsoft.Json;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using TencentCloud.Common;
|
|||
|
|
|
|||
|
|
public class AddCdnDomainRequest : AbstractModel
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 域名
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Domain")]
|
|||
|
|
public string Domain{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 加速域名业务类型
|
|||
|
|
/// web:静态加速
|
|||
|
|
/// download:下载加速
|
|||
|
|
/// media:流媒体点播加速
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("ServiceType")]
|
|||
|
|
public string ServiceType{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 源站配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Origin")]
|
|||
|
|
public Origin Origin{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 项目 ID,默认为 0,代表【默认项目】
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("ProjectId")]
|
|||
|
|
public long? ProjectId{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// IP 黑白名单配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("IpFilter")]
|
|||
|
|
public IpFilter IpFilter{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// IP 限频配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("IpFreqLimit")]
|
|||
|
|
public IpFreqLimit IpFreqLimit{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 状态码缓存配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("StatusCodeCache")]
|
|||
|
|
public StatusCodeCache StatusCodeCache{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 智能压缩配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Compression")]
|
|||
|
|
public Compression Compression{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 带宽封顶配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("BandwidthAlert")]
|
|||
|
|
public BandwidthAlert BandwidthAlert{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// Range 回源配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("RangeOriginPull")]
|
|||
|
|
public RangeOriginPull RangeOriginPull{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 301/302 回源跟随配置。
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("FollowRedirect")]
|
|||
|
|
public FollowRedirect FollowRedirect{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 错误码重定向配置(功能灰度中,尚未全量)
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("ErrorPage")]
|
|||
|
|
public ErrorPage ErrorPage{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 请求头部配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("RequestHeader")]
|
|||
|
|
public RequestHeader RequestHeader{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 响应头部配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("ResponseHeader")]
|
|||
|
|
public ResponseHeader ResponseHeader{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 下载速度配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("DownstreamCapping")]
|
|||
|
|
public DownstreamCapping DownstreamCapping{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 节点缓存键配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("CacheKey")]
|
|||
|
|
public CacheKey CacheKey{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 头部缓存配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("ResponseHeaderCache")]
|
|||
|
|
public ResponseHeaderCache ResponseHeaderCache{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 视频拖拽配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("VideoSeek")]
|
|||
|
|
public VideoSeek VideoSeek{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 缓存过期时间配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Cache")]
|
|||
|
|
public Cache Cache{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 跨国链路优化配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("OriginPullOptimization")]
|
|||
|
|
public OriginPullOptimization OriginPullOptimization{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// Https 加速配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Https")]
|
|||
|
|
public Https Https{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 时间戳防盗链配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Authentication")]
|
|||
|
|
public Authentication Authentication{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// SEO 优化配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Seo")]
|
|||
|
|
public Seo Seo{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 访问协议强制跳转配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("ForceRedirect")]
|
|||
|
|
public ForceRedirect ForceRedirect{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// Referer 防盗链配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Referer")]
|
|||
|
|
public Referer Referer{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 浏览器缓存配置(功能灰度中,尚未全量)
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("MaxAge")]
|
|||
|
|
public MaxAge MaxAge{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// Ipv6 配置(功能灰度中,尚未全量)
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Ipv6")]
|
|||
|
|
public Ipv6 Ipv6{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 地域属性特殊配置
|
|||
|
|
/// 适用于域名境内加速、境外加速配置不一致场景
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("SpecificConfig")]
|
|||
|
|
public SpecificConfig SpecificConfig{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 域名加速区域
|
|||
|
|
/// mainland:中国境内加速
|
|||
|
|
/// overseas:中国境外加速
|
|||
|
|
/// global:全球加速
|
|||
|
|
/// 使用中国境外加速、全球加速时,需要先开通中国境外加速服务
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Area")]
|
|||
|
|
public string Area{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 回源超时配置
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("OriginPullTimeout")]
|
|||
|
|
public OriginPullTimeout OriginPullTimeout{ get; set; }
|
|||
|
|
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// For internal usage only. DO NOT USE IT.
|
|||
|
|
/// </summary>
|
|||
|
|
internal override void ToMap(Dictionary<string, string> map, string prefix)
|
|||
|
|
{
|
|||
|
|
this.SetParamSimple(map, prefix + "Domain", this.Domain);
|
|||
|
|
this.SetParamSimple(map, prefix + "ServiceType", this.ServiceType);
|
|||
|
|
this.SetParamObj(map, prefix + "Origin.", this.Origin);
|
|||
|
|
this.SetParamSimple(map, prefix + "ProjectId", this.ProjectId);
|
|||
|
|
this.SetParamObj(map, prefix + "IpFilter.", this.IpFilter);
|
|||
|
|
this.SetParamObj(map, prefix + "IpFreqLimit.", this.IpFreqLimit);
|
|||
|
|
this.SetParamObj(map, prefix + "StatusCodeCache.", this.StatusCodeCache);
|
|||
|
|
this.SetParamObj(map, prefix + "Compression.", this.Compression);
|
|||
|
|
this.SetParamObj(map, prefix + "BandwidthAlert.", this.BandwidthAlert);
|
|||
|
|
this.SetParamObj(map, prefix + "RangeOriginPull.", this.RangeOriginPull);
|
|||
|
|
this.SetParamObj(map, prefix + "FollowRedirect.", this.FollowRedirect);
|
|||
|
|
this.SetParamObj(map, prefix + "ErrorPage.", this.ErrorPage);
|
|||
|
|
this.SetParamObj(map, prefix + "RequestHeader.", this.RequestHeader);
|
|||
|
|
this.SetParamObj(map, prefix + "ResponseHeader.", this.ResponseHeader);
|
|||
|
|
this.SetParamObj(map, prefix + "DownstreamCapping.", this.DownstreamCapping);
|
|||
|
|
this.SetParamObj(map, prefix + "CacheKey.", this.CacheKey);
|
|||
|
|
this.SetParamObj(map, prefix + "ResponseHeaderCache.", this.ResponseHeaderCache);
|
|||
|
|
this.SetParamObj(map, prefix + "VideoSeek.", this.VideoSeek);
|
|||
|
|
this.SetParamObj(map, prefix + "Cache.", this.Cache);
|
|||
|
|
this.SetParamObj(map, prefix + "OriginPullOptimization.", this.OriginPullOptimization);
|
|||
|
|
this.SetParamObj(map, prefix + "Https.", this.Https);
|
|||
|
|
this.SetParamObj(map, prefix + "Authentication.", this.Authentication);
|
|||
|
|
this.SetParamObj(map, prefix + "Seo.", this.Seo);
|
|||
|
|
this.SetParamObj(map, prefix + "ForceRedirect.", this.ForceRedirect);
|
|||
|
|
this.SetParamObj(map, prefix + "Referer.", this.Referer);
|
|||
|
|
this.SetParamObj(map, prefix + "MaxAge.", this.MaxAge);
|
|||
|
|
this.SetParamObj(map, prefix + "Ipv6.", this.Ipv6);
|
|||
|
|
this.SetParamObj(map, prefix + "SpecificConfig.", this.SpecificConfig);
|
|||
|
|
this.SetParamSimple(map, prefix + "Area", this.Area);
|
|||
|
|
this.SetParamObj(map, prefix + "OriginPullTimeout.", this.OriginPullTimeout);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|