Swagger如何访问Ocelot中带权限验证的API

先亮源代码:https://github.com/axzxs2001/Asp.NetCoreExperiment/tree/master/Asp.NetCoreExperiment/SwaggerDemo

这篇博文不是对asp.net core中使用Swagger作介绍,因为社区博客作了详细说明。

今天主要说一下Swagger在Ocelot网关权限验证模式下的访问,以及Swagger请求应答的数据格式。

首先创建四个项目:

SwaggerOcelot:asp.net core web api类型,api网关项目

SwaggerAuthorize:asp.net core web api类型,用户验证项目

SwaggerAPI01:asp.net core web api类型,api 1项目

SWaggerAPI02:asp.net core web api类型,api 2项目

首先在四个项目中添加基于Jwt的Toekn认证,参见https://www.cnblogs.com/axzxs2001/p/9250588.html

再在四个项目Nuget中引入Swashbuckle.AspNetCore,我的Demo中用的是2.5.0,再分别配置Swagger

 SwaggerAuthorize  Starup.cs配置

640?wx_fmt=png

SwaggerAPI01,SwaggerAPI02类似,Starup.cs配置,其中让Swagger支付Token验证,就是要在这部分添加Swagger配置

640?wx_fmt=png

SwaggerOcelot,Starup.cs配置

640?wx_fmt=png

接下来,为Swagger访问Web API项目,添加请求返回格式,默认状况下,Swagger是支持Json的,下来添加支持XML格式

第一步,添加支持XML格式

640?wx_fmt=png

第二步,在对应的Action添加ProducesResponseType特性,为转换作支持

640?wx_fmt=png

运行效果:

先看登录

640?wx_fmt=gif640?wx_fmt=gif

 

再看api访问

相关文章

原文地址: https://www.cnblogs.com/axzxs2001/p/9253495.html


 
  

.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

640?wx_fmt=jpeg

猜你喜欢

转载自blog.csdn.net/sd7o95o/article/details/80921078