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

swagger可以处理Http请求中字符串的IEnumerable吗?

殷德本
2023-03-14

我对web开发很陌生,总体来说很傲慢,所以如果这个问题太天真,我很抱歉。

我将使用visual Studio2019中的ASP.NET核心Web Api模板来更好地解释我的问题,所以请在我遗漏了一些信息的情况下考虑该环境(或者只要求丢失的部分,我将带来这些信息)。

这里有一个WeatherForecastController类,带有一个简单的GET(我包含了Names参数):

[HttpGet]
public IEnumerable<WeatherForecast> Get(IEnumerable<string> names)
{
    //...
}
  1. Swagger确实可以使用IEnumerable,因为如果参数类型为IEnumerable (它显示上传文件的列表,显示文件选择对话框,等等),
  2. 我尝试在DTO类中封装参数,但它似乎破坏了更多的东西(甚至IEnumerable 似乎在DTO类中也不起作用;只有在[HttpVerb]方法的参数列表中直接传递时才起作用;
  3. 我尝试了其他类似的类型,以及icollection list string[];它们似乎都不起作用;
  4. 使用诸如boolint等基元类型作为IEnumerable
  5. 的类型参数时,也会出现同样的问题

那么到底发生了什么?我是否应该设置某种配置值,以便它可以处理基元类型的集合?

使用显示问题的图像进行更新:

共有1个答案

寇开畅
2023-03-14

必须在案例中指定模型绑定源。你的行动方法应该是这样的:

    [HttpPost("test/names")]
    public IEnumerable<string> PostNames([FromQuery]IEnumerable<string> names, IEnumerable<IFormFile> files)
    {
        //...some code
        return names;
    }

在指定绑定源之前,不应使用两个或多个复杂类型参数作为操作参数。这是因为默认情况下复杂对象绑定到请求体,并且只能绑定一个参数到请求体。

截至microsoft文档:

 类似资料:
  • 通常用于HTTP/HTTPS请求失败/成功等处理. 进程: 主进程​ IncomingMessage是由 EventEmitter响应可读流接口 实例事件 事件: 'data' 用途:响应或回调传送到应用的数据 chunk Buffer - 响应正文的数据块. 事件: 'end' 触发:响应正文已结束时 事件: 'aborted' 触发:正在进行的HTTP事务期间请求已取消时 事件: 'error

  • 问题内容: 我必须使用已经生成的JSON字符串发出http Post请求。我尝试了两种不同的方法: 但是我从两个人那里得到了相同的“不需要的”结果。到目前为止,我使用 HttpURLConnection的 代码是: 到目前为止,我使用 HttpClient的 代码是: 生成的JsonString如下所示: 我得到的答复是: 有什么想法吗? 问题答案: 最后,我设法找到了解决问题的方法…

  • 并发请求处理 我创建了一个服务器,并使用s.listenandserve()来处理请求。据我所知,这些请求是同时送达的。我使用一个简单的处理程序来检查它: 我看到,如果我发送了几个请求,我将看到所有的“1”出现,只有在一秒钟后所有的“2”出现。但是如果删除Hibernate行,我会看到程序在完成前一个请求之前从不启动请求(输出为1 2 1 2 1 2...)。所以我不明白,如果它们是并发的还是不是

  • 本文向大家介绍Python3处理HTTP请求的实例,包括了Python3处理HTTP请求的实例的使用技巧和注意事项,需要的朋友参考一下 Python3处理HTTP请求的包:http.client,urllib,urllib3,requests 其中,http 比较 low-level,一般不直接使用 urllib更 high-level一点,属于标准库。urllib3跟urllib类似,拥有一些重

  • 我试图理解我在其他文章中看到的关于同步和异步web请求的术语,因此,在下面的场景中: 客户机同步地向服务器发送请求(这意味着客户机被阻塞,直到它收到响应),服务器异步地制定响应(它为每个请求启动一个新线程,并在该线程上创建响应)。 请求本身是同步的,而请求的处理是异步的吗?

  • 我一直试图向facebook发送HTTP POST请求,但没有成功。我从服务器收到以下响应: HTTP/1.1 400不良请求内容-类型:text/html;charset=utf-8日期:2016年12月10日星期六21:28:17 GMT连接:关闭内容-长度:2959 Facebook |错误 抱歉,出了点问题,我们正在修理,会尽快修好的 我的密码 我做错了什么?