ocelot.json模板
{ "ReRoutes": [ { "DownstreamPathTemplate": "/DemoService/{url}", // 下游游请求模板 "UpstreamPathTemplate": "/{url}", // 上游请求模板 "UpstreamHttpMethod": [ "Get", "Post", "Delete", "Put", "Option" ], // 上游请求http方法 "AddHeadersToRequest": {}, "UpstreamHeaderTransform": {}, "DownstreamHeaderTransform": {}, "AddClaimsToRequest": {}, "RouteClaimsRequirement": {}, "AddQueriesToRequest": {}, "RequestIdKey": null, //缓存配置 "FileCacheOptions": { "TtlSeconds": 10, //缓存时间(秒)。 "Region": "somename" //缓存分区名 }, "ReRouteIsCaseSensitive": false, "ServiceName": "DemoService", "DownstreamScheme": "http", //下游服务 schema //配置服务认证 "AuthenticationOptions": { "AuthenticationProviderKey": "", "AllowedScopes": [] }, "HttpHandlerOptions": { "AllowAutoRedirect": false, "UseCookieContainer": false, "UseTracing": false, "UseProxy": true }, "DownstreamHostAndPorts": [], "UpstreamHost": null, "Key": null, "DelegatingHandlers": [], "Priority": 1, "Timeout": 0, "DangerousAcceptAnyServerCertificateValidator": false, "SecurityOptions": { "IPAllowedList": [], "IPBlockedList": [] } } ], "DynamicReRoutes": [], "Aggregates": [], "GlobalConfiguration": { "BaseUrl": null, //网关暴露的的地址 "RequestIdKey": null, "ServiceDiscoveryProvider": { "Host": "192.168.199.203", "Port": 8500, "Type": "Consul", "Token": "", "ConfigurationKey": "OcelotYCH", "PollingInterval": 1000, "Namespace": null }, //限流配置 "RateLimitOptions": { "ClientIdHeader": "ClientId", //用来设别客户请求头,默认为ClientId "QuotaExceededMessage": "Too many requests", //提示信息 "RateLimitCounterPrefix": "ocelot", "DisableRateLimitHeaders": false, //是否显示X-Rate-Limit和Retry-After头 "HttpStatusCode": 429, //状态码 "ClientWhitelist": [], //白名单,不受限流控制 "EnableRateLimiting": true, //启用限流 "Period": "1s", //限流控制的时间段 1s, 5m, 1h, 1d "PeriodTimespan": 1, //超过限流限制的次数后,需要等待重置的时间(单位是秒)。 "Limit": 10 //在限流控制时间段内最大访问数 }, //熔断配置 "QoSOptions": { "ExceptionsAllowedBeforeBreaking": 3, //允许多少个异常请求 "DurationOfBreak": 10, //熔断的时间,单位为秒 "TimeoutValue": 5000 //如果下游请求的处理时间超过多少则将请求设置为超时 }, "LoadBalancerOptions": { "Type": "LeastConnection", "Key": null, "Expiry": 0 }, "DownstreamScheme": null, "HttpHandlerOptions": { "AllowAutoRedirect": false, "UseCookieContainer": false, "UseTracing": false, "UseProxy": true } } }