swagger - Swagger UI 显示“未找到获取错误”
问题描述
在我的 asp.net core 2.1 api 中,我添加了静态文件服务和 Swashbuckle,但显然找不到生成的 .json
services.AddSwaggerGen(x =>
x.SwaggerDoc("Swagger", new Info { Title = "Asp.Net Core 2 Api", Description = "Swagger Core Api" }));
----
app.UseCors("AllowAll");
app.UseAuthentication();
app.UseStaticFiles();
app.UseSwagger();
app.UseSwaggerUI(x => x.SwaggerEndpoint("/swagger/swagger.json", "Core Api"));
任何想法?谢谢
解决方案
您的 swagger 端点有错误的 Url,因此出现“未找到”错误。通过默认方式构建的 Swagger 文档的 url 格式为调用中提供/swagger/<document-name>/swagger.json
的名称 (第一个字符串)参数x.SwaggerDoc("Swagger", new Info {...});
在您的情况下,您提供了“Swagger”,因此您的端点 url 应该是"/swagger/Swagger/swagger.json"
.
在你的 ConfigureServices 你的电话应该像
app.UseSwaggerUI(x => x.SwaggerEndpoint("/swagger/Swagger/swagger.json", "Core Api"));
推荐阅读
- c++ - 观察者模式、智能指针和单例类
- javascript - 我如何检查对象是否完全遵循javascript中的某种类型格式
- ios - 结合:如何从保护前提条件中提前退出错误
- python - 动画子情节和创建视频
- c++ - 如何在 C++ 中将字符串输入存储在单个数组中?
- json - Flutter:当我尝试访问 JSON 数据的元素时出现 TypeError
- python - Pipfile.lock 已过期/无法创建常规文件“requirements.txt”
- python - 在 python 中使用列表推导从另一个列表生成列表
- python - Debian,ImageTk 问题:“无法从 'PIL' 导入 'ImageTk'”
- c# - 当我试图让粒子系统慢慢消失时,Unity 崩溃(C 代码)