O Ocelot é um gateway API de código aberto implementado em .NET Core, que é poderoso e inclui roteamento, agregação de requisições, descoberta de serviços, autenticação, autenticação, disjuntor limitador de corrente e integração com balanceador de carga embutido com Service Fabric e Butterfly Tracing. Essas funções só precisam ser simples para serem completas, e vamos explicar a configuração dessas funções uma a uma.
Claro, projetos Java também possuem gateways; o Spring Cloud Gateway é o novo framework de gateway do Spring Cloud, anteriormente conhecido como Netflix Zuul.
Primeiro, crie um projeto vazio ASP.NET Core 3.1 com o nome: dotnet-gateway-demo
Nuget instala o ocelot com o seguinte comando:
Crie dois novos projetos asp.net API Core 3.1, chamados web-api-demo1 e web-api-demo2, respectivamente. A estrutura da solução é a seguinte:
Modificar o método Get do controlador WeatherForecastController dos projetos "web-api-demo1" e "web-api-demo2" com o seguinte código:
Link da demo1: http://localhost:7853/weatherforecast Link Demo2: http://localhost:7863/weatherforecast
No diretório raiz do projeto dotnet-gateway-demo, crie um novo arquivo de configuração "ocelot.json", conforme segue:
onde o endereço BaseUrl é preenchido com a URL de lançamento do projeto atual,Preencha conforme sua situação real。
- DownstreamPathTemplate: O caminho relativo do serviço downstream
- DownstreamScheme: O esquema http do serviço downstream
- DownstreamHostAndPorts: O endereço do serviço downstream, se você usar o LoadBalancer, pode preencher vários campos aqui
- UpstreamPathTemplate: 上游也就是用户输入的请求Url模板
- UpstreamHttpMethod: 上游请求http方法,可使用数组
Participe do CreateHostBuilder da Program.cs
Edite o arquivo Startup.cs com o seguinte código:
Seus principais códigos são:
Crie um projeto inicial e inicie 3 projetos web ao mesmo tempo, como mostrado na figura a seguir:
Uma vez que a configuração estiver concluída, inicie e, de acordo com nossas regras de configuração, tente acessar:O login do hiperlink está visível.eO login do hiperlink está visível.Como mostrado abaixo:
Adicionamos a seguinte configuração ao arquivo ocelot.json, tentamos fazer um reverse proxy deste site, a configuração é a seguinte:
Tente visitar:O login do hiperlink está visível.
Código fonte para download:
Turistas, se quiserem ver o conteúdo oculto deste post, por favor Resposta
Documentação de Referência:O login do hiperlink está visível.
(Fim)
|