Giter Club home page Giter Club logo

igeekfan.aspnetcore.knife4jui's Introduction

Hi 👋, I'm IGeekFan(天上月) ,我是一名 C#/ASP.NET Core/JavaScript开发者

🍳 推荐项目

📈 Github Statistics

🏆 欢迎微信搜索:dotNET搬砖队

igeekfan.aspnetcore.knife4jui's People

Contributors

91651 avatar luoyunchong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

igeekfan.aspnetcore.knife4jui's Issues

EndpointRoutingMiddleware matches endpoints setup by EndpointMiddleware and so must be added to the request execution pipeline before EndpointMiddleware. Please add EndpointRoutingMiddleware by calling 'IApplicationBuilder.UseRouting' inside the call to 'Configure(...)' in the application startup code.

EndpointRoutingMiddleware matches endpoints setup by EndpointMiddleware and so must be added to the request execution pipeline before EndpointMiddleware. Please add EndpointRoutingMiddleware by calling 'IApplicationBuilder.UseRouting' inside the call to 'Configure(...)' in the application startup code.

支持 FastEndpoints 框架么?

当前 FastEndpoints.Swagger 的 nuget 包是基于 NSwag.AspNetCore 的,目前 FastEndpoints 框架的提供者不考虑支持 Swashbuckle.AspNetCore.Swagger 这个包集成 FastEndpoints.Swagger 的支持,请问 IGeekFan.AspNetCore.Knife4jUI 可以提供对 FastEndpoints 框架的支持么?

请问如何实现登录查看接口

请问如何配置才能实现登录查看接口,我看swagger-ui-boot是有这个功能的,不知道这个版本是否支持这个功能?

使用0.0.8的版本依然存在响应结果是下载文件

我使用最新的IGeekFan.AspNetCore.Knife4JUI(0.0.8),运行起来后,返回值依然是下载文件呢?我看你关闭的issue中说升级到0.0.2版本就已经解决了这个问题呢?还有就是咱们这个包还在一直更新吗?看最新版本还是2020年10月23日发布的

一个小问题

开启缓存已打开的api文档

开启分组tag显示description说明属性

这两个选项在0.0.9版本里面没法看到 了 被两道下划线给覆盖
不知道能否解决下呢 谢谢了

Knife4jUI 页面 DTO 模型显示问题

FastEndpoint 框架中使用 Knife4jUIFastEndpoints.Swagger 的对比。

先定义 4 个 Endpoint ,分别如下:

- MyEndpoint : Endpoint<MyRequest, MyResponse>
- TheyEndpoint : Endpoint<UserRequest<TheyReqDto>, UserResponse<TheyInfo>>
- UserEndpoint : Endpoint<UserRequest<UserReqDto>, UserResponse<UserInfo>>
- YourEndpoint : Endpoint<YourRequest<YourReqDto>, YourResponse<YourInfo>>
  • MyEndpoint (get请求)可以正常显示参数说明(来自 DTO 模型 MyRequest 的属性注释)

image

  • TheyEndpoint (get请求)不能正常显示参数说明(来自 DTO 模型 UserRequest<TheyReqDto> 的属性注释)

image

  • UserEndpoint (get请求)也是类似的问题,但是注意和 TheyEndpoint 对比,在 UserEndpointUserReqDto 属性中还存在 UserFeatures 类型;

  • YourEndpoint (post请求)参数说明 "args": {} 也未能正常显示对应的 DTO 模型属性

image

项目环境配置说明:

<PropertyGroup>
    <TargetFramework>net7.0</TargetFramework>
    <Nullable>enable</Nullable>
    <ImplicitUsings>enable</ImplicitUsings>
    <GenerateDocumentationFile>true</GenerateDocumentationFile>
</PropertyGroup>

注意:把 GenerateDocumentationFile 设置为 false 再对比查看,显示不一样的效果。

说明:AddSwaggerDoc 中设置了 settings.OperationProcessors.Add(new DefaultValueOperationProcessor());

这几个 Endpoint 注意仔细对比,都有对应参照,在原生 Swagger(FastEndpoints.Swagger) 显示相对正常,但是 Knife4jUI 中显示就不太符合预期。

完整 demo 请查看这里 => Solution1.zip

是否支持OAuth 2.0授权

我的API需要向IdentityServer验证获取AccessToken后才能调用, 这一点在之前使用原生SwaggerUI时就已经实现, 现在迁移到Knife4jUI, 却发现界面上不再支持认证流程, 请问我是否该弃坑?

在.net6中Dto模型的属性描述无法生成

我在.net5中使用该组件,接口的参数描述,dto对象的描述都能正常生成和显示,但最近我在.net6中发现dto的属性描述无法生成处理,请问你们有遇到类似问题吗?

RoutePrefix 添加的情况下,swagger-resources 路径无效修复

有时候,通过Nginx分路径转发不同API情况下,有必须用到 RoutePrefix ,但 swagger-resources 加前缀后访问不到,404报错。
查看源码得知:Knife4jUIMiddleware.cs 文件第69行,if (httpMethod == "GET" && Regex.IsMatch(path, $"^/swagger-resources$")) 改为 if (httpMethod == "GET" && Regex.IsMatch(path, $"/swagger-resources$")),即可。这样的话,加了前缀的 swagger-resources 也可被请求到。
优化一下,方便其它人。
就这个小地方,我花了几个小时,尝试不行,不得已才查看源码找到的。
谢谢楼主的无私开源贡献!!!

如何实现接口实体个别属性隐藏

我想针对不同的接口隐藏一些属性,目前我在原来的Swashbuckle.AspNetCore.SwaggerGen中只能实现在实体中特性标记删除,而不能在接口上实现

作者必看!0.0.11v 关于显示接口名与授权问题!

您好,作者,我和大部分其他人早已经发现,默认的丝袜哥ui界面不够现代化,且没法保存上一次的编辑记录,关于调试接口与授权每一次都没重新输入,确实需要一个更完美的ui了!!!
我们是从早期版本开始使用的,操作起来确实方便了不少,对于目前现状,我认为有很大的意义!
不过目前存在一下两点不足:(我们这块反应的人也挺多的)

关于鉴权:

image
好像是无效的,我们只能通过全局配置进行添加

关于显示:

在0.0.11v添加了控制器显示,很舒服,但是:
当有注释存在的情况下,无法让菜单显示的是接口名
image
如果没有注释或者为空注释:
image
有的时候,应该让接口名显示,后跟注释

最后,感谢作者让我们的API文档接口与java齐平~~~

Knife4jUI和MiniProfiler

在构建MiniProfiler中根据IGeekFan.AspNetCore.Knife4jUI项目中的代码替换index.html后,在加上MiniProfiler的js后,发现一个问题
Knife4jUI中的调试等功能丢失
请问作者index.html页面要怎么替换,下面是我代码的截图
image
image

请问请求头部怎么加呢?我配置了全局的Header,可是请求接口时并不会把这个全局的Header加上去

用的是:NSwag
全局这样加的


builder.Services.AddOpenApiDocument(c =>
{
    c.UseControllerSummaryAsTagDescription = true;

    c.AddSecurity("client", new OpenApiSecurityScheme
    {
        Description = "client for request",
        Name = "client",
        In = OpenApiSecurityApiKeyLocation.Header,
        Type = OpenApiSecuritySchemeType.ApiKey
    });

    c.AddSecurity("apiKey", Enumerable.Empty<string>(), new OpenApiSecurityScheme
    {
        Description = "Authorization for request",
        Name = "Authorization",
        In = OpenApiSecurityApiKeyLocation.Header,
        Type = OpenApiSecuritySchemeType.ApiKey
    });

    c.UseHttpAttributeNameAsOperationId = true;
    c.UseRouteNameAsOperationId = true;

});

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.