当前位置: 首页 > 知识库问答 >
问题:

调试Swashbuckle错误-未能加载API定义

鄢子平
2023-03-14

是否有任何方法可以获得堆栈跟踪或Swashbuckle/Swagger错误的内部异常?在某个时候,它停止了工作。我不确定它是否是在我从.NET Core2.0升级到2.1的时候,但我很确定在那之后它仍然有效。当我导航到myapidomain/swagger/index.html时,我得到以下错误:

public void ConfigureServices(IServiceCollection services)
{
    ...
     services.AddSwaggerGen(c =>
        {
            c.SwaggerDoc("v1", new Info
            {
                Version = "v1",
                Title = "My.API",
                Description = "Test"
            });
        });   
}


public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    if (env.IsDevelopment())
        app.UseDeveloperExceptionPage();
    else
        app.UseHsts();

    app.UseSwagger();
    app.UseSwaggerUI(c =>
    {
        c.SwaggerEndpoint("/swagger/v1/swagger.json", "PropWorx API V1");
    });
    ...
}

我在ASP.NET Core2.1Web API上使用SwashBuckle.aspNetCore3.0.0。

共有1个答案

景稳
2023-03-14

同意UI调试并不真正有用,但是可以通过打开浏览器的调试工具(例如,Chrome上的F12),刷新/swaggerendpoint,然后检查swagger.json有效负载来清除完整的异常跟踪--这是一个XHR请求,它将以500状态代码失败。

(对于大型项目,我建议您将链接加入书签,以便以后可以直接转到json文件,例如https://myhost/swagger/v1/swagger.json)

例如,在下面这个人为的错误中,我在两个方法之间复制了相同的路线:

[HttpGet]
[Route("parseenum")]
public ActionResult CheckEnum([FromQuery] MyEnum someEnum)
...

[HttpGet]
[Route("parseenum")]
public ActionResult CheckEnum2([FromQuery] MyEnum someEnum)
...

它会产生错误:

您现在应该能够跟踪并修复它。

 类似资料:
  • 问题内容: 我目前正在尝试返回数据库调用以填充下拉框。但是,当我循环浏览返回的列表时,出现“未定义回调”错误。我已经用两种方法尝试过此代码,但都没有用。 我试过了: 我也尝试过: 两者都给我错误: TypeError:回调未定义 返回的数据对象是我必须从中拉出两部分的数据库对象的列表。 如何解决此“回调”错误,以便可以在函数中使用数据? 问题答案: 回调是在其前任完成操作并返回值后立即执行的函数。

  • 所以我试图安装一个名为better sqlite pool的节点包,但是我遇到了一个似乎无法解决的错误。每当我运行npm I better sqlite池时,都会出现以下错误: 我对此做了广泛的研究,并尝试了几乎所有建议的修复方法,但都没有成功。 我通过添加环境变量VCTargetsPath并将其设置为C:\Program Files(x86)\MSBuild\Microsoft,成功修复了收到的

  • 我试图显示从本地机器中选择的图像,我需要该图像的位置用于JavaScript函数,但无法获得图像的位置。 以下是HTML代码: 控制台输出: 警告如下: DevTools未能加载SourceMap:无法加载chrome-扩展名的内容://alplpnakfeabeiebipdmaenpmbgknjce/include.preload.js.map: HTTP错误:状态代码404,::ERR_UNK

  • 问题如下。我正在为一个名为“myprogramminglab”的在线编程网站做作业。它要求我做以下练习: 设计一个名为 Person 的类,其中包含用于保存人员姓名、地址和电话号码的字段(全部为字符串)。编写初始化所有这些值的构造函数,以及每个字段的赋值函数和访问器方法。 接下来,设计一个名为Customer的类,它继承自Person类。Customer类应该有一个用于客户编号的字符串字段和一个指

  • 问题内容: 我试图与XAMPP和MySQL服务器建立简单连接,但是每当我尝试输入数据或连接到数据库时,都会出现此错误。 致命错误:未捕获错误:在C:\ xampp \ htdocs \ register.php:22中调用未定义函数mysql_connect() 堆栈跟踪:#0 {main}在第22行的C:\ xampp \ htdocs \ register.php中抛出 第22行的示例: 问题

  • 我在尝试访问http://localhost/phpmyadmin/时收到以下错误: 在这里回顾了类似的主题后,我做了以下工作: null 我运行的是Windows10,Apache2.4-64bits、PHP7-64bits和mysqlserver5.7。Apache运行良好,PHP也运行良好(访问info.PHP无需担心) 谢了。