ASP.Net Core设置接口根路径的方法
创始人
2024-11-05 07:11:40
0

使用asp.net core开发微服务项目,需要给每个服务设置不同的根路径,这样既能使用网关转发请求,又方便对单个服务进行测试,保证请求路径的统一。
设置方法需要使用中间件,在Program.cs添加如下代码

app.UsePathBase("/acl");  app.MapControllers();  app.Urls.Add("http://0.0.0.0:8081");  app.Run(); 

其中,UsePathBase方法添加了一个中间件,设置所有请求的根路径是acl,要注意中间件添加的位置,在MapControllers方法前面,才能生效。
但是,这样做了以后,swagger相关的接口路径并没有发生变化。也就是说,所有的接口都对应两个请求路径,一个是以acl开头的路径,另一个是swagger里面的请求路径。如果想让swagger的接口路径都加上相同的前缀,需要改成如下代码

if (app.Environment.IsDevelopment()) {          app.UseSwaggerUI(options =>     {         options.RoutePrefix = "acl";         options.SwaggerEndpoint("swagger/v1/swagger.json", "system");     });     app.UsePathBase("/acl");     app.UseSwagger();     app.UseCors(builder => builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader()); } else {     app.UsePathBase("/acl"); }  app.MapControllers();  app.Urls.Add("http://0.0.0.0:8081");   app.Run(); 

重点是这一部分

app.UseSwaggerUI(options => {     options.RoutePrefix = "acl";     options.SwaggerEndpoint("swagger/v1/swagger.json", "system"); }); app.UsePathBase("/acl"); app.UseSwagger(); 

这样一来,swagger的接口路径也都带有acl前缀了。
访问http://localhost:8081/acl/index.html,就能打开swagger的页面,可以看到,请求路径已经变了
在这里插入图片描述

相关内容

热门资讯

2分钟辅助!科乐第三方辅助工具... 2分钟辅助!科乐第三方辅助工具(辅助挂)一直真的有辅助软件(存在有挂)该软件可以轻松地帮助玩家将科乐...
第二分钟了解!wejoker辅... 第二分钟了解!wejoker辅助软件视频,德普之星透视辅助软件是真的吗,学习教程(有挂解惑)所有人都...
5分钟辅助!方片十三张脚本(辅... 5分钟辅助!方片十三张脚本(辅助挂)原来有辅助插件(了解有挂)1、方片十三张脚本有没有辅助教程、方片...
第5分钟了解!wejoker黑... 第5分钟了解!wejoker黑侠辅助器,hardrock作弊,指南书教程(确实有挂)wejoker黑...
一分钟辅助!欢乐达人葫芦鱼辅助... 一分钟辅助!欢乐达人葫芦鱼辅助(辅助挂)总是是真的辅助app(了解有挂)1、完成欢乐达人葫芦鱼辅助辅...
三分钟了解!wepoker黑侠... 三分钟了解!wepoker黑侠辅助器正版下载,哈糖大菠萝有没有挂,绝活儿教程(真的有挂)1、上手简单...
第三分钟辅助!余干辅助软件哪个... 第三分钟辅助!余干辅助软件哪个好(辅助挂)一直有辅助攻略(确实有挂)1、玩家可以在余干辅助软件哪个好...
八分钟了解!wepoker辅助... 八分钟了解!wepoker辅助透视软件,werplan怎么作弊,总结教程(有挂教学)1、下载好wep...
第四分钟辅助!奇迹脚本辅助器手... 第四分钟辅助!奇迹脚本辅助器手机版(辅助挂)确实存在有辅助工具(有挂技巧)1.奇迹脚本辅助器手机版 ...
第5分钟了解!hhpoker透... 第5分钟了解!hhpoker透视脚本,wepoker有辅助插件吗,课程教程(真是有挂)一、wepok...