Ocelot er en open source API-gateway implementeret i .NET Core, som er kraftfuld og inkluderer routing, anmodningsaggregation, serviceopdagelse, autentificering, autentificering, current limiting circuit breaker og indbygget load balancer-integration med Service Fabric og Butterfly Tracing. Disse funktioner behøver kun at være simple at fuldføre, og vi vil forklare konfigurationen af disse funktioner én ad gangen.
Selvfølgelig har Java-projekter også gateways, Spring Cloud Gateway er Spring Clouds nye gateway-rammeværk, tidligere Netflix Zuul.
Først opretter du et tomt projekt ASP.NET Core 3.1 med navnet: dotnet-gateway-demo
Nuget installerer Ocelot med følgende kommando:
Opret to nye asp.net Core 3.1 API-projekter, navngivet web-api-demo1 og web-api-demo2, henholdsvis. Løsningsstrukturen er som følger:
Ændr Get-metoden for WeatherForecastController-controlleren for "web-api-demo1" og "web-api-demo2" projekterne med følgende kode:
demo1 link: http://localhost:7853/weatherforecast Demo2-link: http://localhost:7863/weatherforecast
I rodmappen for dotnet-gateway-demo-projektet oprettes en ny konfigurationsfil "ocelot.json", som følger:
hvor BaseUrl-adressen er udfyldt med launch-URL'en for det aktuelle projekt,Udfyld efter din faktiske situation。
- DownstreamPathTemplate: Den relative sti for downstream-tjenesten
- DownstreamScheme: Downstream-servicens http-skema
- DownstreamHostAndPorts: Adressen på downstream-tjenesten, hvis du bruger LoadBalancer, kan du udfylde flere felter her
- UpstreamPathTemplate: 上游也就是用户输入的请求Url模板
- UpstreamHttpMethod: 上游请求http方法,可使用数组
Deltag i Program.cs's CreateHostBuilder
Rediger Startup.cs-filen med følgende kode:
Dens hovedkoder er:
Opret et startup-projekt og start 3 webprojekter på samme tid, som vist i følgende figur:
Når opsætningen er færdig, start og, ifølge vores konfigurationsregler, prøv at få adgang til:Hyperlink-login er synlig.ogHyperlink-login er synlig.Som vist nedenfor:
Vi tilføjer følgende konfiguration til ocelot.json-filen, forsøger at reverse proxy dette site, konfigurationen er som følger:
Prøv at besøge:Hyperlink-login er synlig.
Kildekode-download:
Turister, hvis I vil se det skjulte indhold i dette indlæg, så vær venlig Svar
Referencedokumentation:Hyperlink-login er synlig.
(Slut)
|