微信公众号:趣编程ACE
关注可了解更多的.NET日常实战开发技巧,如需源码 请公众号后台留言 源码;
[如果觉得本公众号对您有帮助,欢迎关注]
.Net6下集成微服务网关-Ocelot
网关常见功能
1:路由 routing
2: 请求聚合
3:身份验证和授权
4:速率限制
5:缓存
6:负载均衡
路由 routing基本使用
安装Nugget包
1// 18.0.0 最新版 支持.net 6
2Install-Package Ocelot
建立一个.Net6 Web Api 的项目
服务端代码编写
1// 添加日志服务 ,这样在访问网关接口的时候可以在控制台打印输出相应的信息2builder.Host.ConfigureLogging(log=>{3 log.ClearProviders();4 log.AddConsole();5});6// 注册Ocelot 服务7builder.Services.AddOcelot();89// ----------
10// 注册好Ocelot 服务后 启用其中间件
11app.UseOcelot().Wait();
设置Ocelot 配置json文件
在项目根目录下创建一个ocelot.json 文件
PS:配置文件详细参数介绍参考上文视频或者官网地址
1{2 "Routes": [3 {4 "DownstreamPathTemplate": "/todos/{id}",5 "DownstreamScheme": "https",6 "DownstreamHostAndPorts": [7 {8 "Host": "jsonplaceholder.typicode.com",9 "Port": 443
10 }
11 ],
12 "UpstreamPathTemplate": "/todos/{id}",
13 "UpstreamHttpMethod": [ "Get" ]
14 }
15 ],
16 "GlobalConfiguration": {
17 "BaseUrl": "https://localhost:5000"
18 }
19}