/* * 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 { /// /// 域名 /// [JsonProperty("Domain")] public string Domain{ get; set; } /// /// 加速域名业务类型 /// web:静态加速 /// download:下载加速 /// media:流媒体点播加速 /// [JsonProperty("ServiceType")] public string ServiceType{ get; set; } /// /// 源站配置 /// [JsonProperty("Origin")] public Origin Origin{ get; set; } /// /// 项目 ID,默认为 0,代表【默认项目】 /// [JsonProperty("ProjectId")] public long? ProjectId{ get; set; } /// /// IP 黑白名单配置 /// [JsonProperty("IpFilter")] public IpFilter IpFilter{ get; set; } /// /// IP 限频配置 /// [JsonProperty("IpFreqLimit")] public IpFreqLimit IpFreqLimit{ get; set; } /// /// 状态码缓存配置 /// [JsonProperty("StatusCodeCache")] public StatusCodeCache StatusCodeCache{ get; set; } /// /// 智能压缩配置 /// [JsonProperty("Compression")] public Compression Compression{ get; set; } /// /// 带宽封顶配置 /// [JsonProperty("BandwidthAlert")] public BandwidthAlert BandwidthAlert{ get; set; } /// /// Range 回源配置 /// [JsonProperty("RangeOriginPull")] public RangeOriginPull RangeOriginPull{ get; set; } /// /// 301/302 回源跟随配置。 /// [JsonProperty("FollowRedirect")] public FollowRedirect FollowRedirect{ get; set; } /// /// 错误码重定向配置(功能灰度中,尚未全量) /// [JsonProperty("ErrorPage")] public ErrorPage ErrorPage{ get; set; } /// /// 请求头部配置 /// [JsonProperty("RequestHeader")] public RequestHeader RequestHeader{ get; set; } /// /// 响应头部配置 /// [JsonProperty("ResponseHeader")] public ResponseHeader ResponseHeader{ get; set; } /// /// 下载速度配置 /// [JsonProperty("DownstreamCapping")] public DownstreamCapping DownstreamCapping{ get; set; } /// /// 节点缓存键配置 /// [JsonProperty("CacheKey")] public CacheKey CacheKey{ get; set; } /// /// 头部缓存配置 /// [JsonProperty("ResponseHeaderCache")] public ResponseHeaderCache ResponseHeaderCache{ get; set; } /// /// 视频拖拽配置 /// [JsonProperty("VideoSeek")] public VideoSeek VideoSeek{ get; set; } /// /// 缓存过期时间配置 /// [JsonProperty("Cache")] public Cache Cache{ get; set; } /// /// 跨国链路优化配置 /// [JsonProperty("OriginPullOptimization")] public OriginPullOptimization OriginPullOptimization{ get; set; } /// /// Https 加速配置 /// [JsonProperty("Https")] public Https Https{ get; set; } /// /// 时间戳防盗链配置 /// [JsonProperty("Authentication")] public Authentication Authentication{ get; set; } /// /// SEO 优化配置 /// [JsonProperty("Seo")] public Seo Seo{ get; set; } /// /// 访问协议强制跳转配置 /// [JsonProperty("ForceRedirect")] public ForceRedirect ForceRedirect{ get; set; } /// /// Referer 防盗链配置 /// [JsonProperty("Referer")] public Referer Referer{ get; set; } /// /// 浏览器缓存配置(功能灰度中,尚未全量) /// [JsonProperty("MaxAge")] public MaxAge MaxAge{ get; set; } /// /// Ipv6 配置(功能灰度中,尚未全量) /// [JsonProperty("Ipv6")] public Ipv6 Ipv6{ get; set; } /// /// 地域属性特殊配置 /// 适用于域名境内加速、境外加速配置不一致场景 /// [JsonProperty("SpecificConfig")] public SpecificConfig SpecificConfig{ get; set; } /// /// 域名加速区域 /// mainland:中国境内加速 /// overseas:中国境外加速 /// global:全球加速 /// 使用中国境外加速、全球加速时,需要先开通中国境外加速服务 /// [JsonProperty("Area")] public string Area{ get; set; } /// /// 回源超时配置 /// [JsonProperty("OriginPullTimeout")] public OriginPullTimeout OriginPullTimeout{ get; set; } /// /// For internal usage only. DO NOT USE IT. /// internal override void ToMap(Dictionary 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); } } }