提问者:小点点

如何发布字符串数组使用POSTMAN?


我正在使用Postman向web API发送字符串数组。web API方法如下所示:

[HttpPost]
public async Task<IEnumerable<DocumentDTO>> GetDocuments([FromBody]IEnumerable<string> documentNames)
{
    return await _service.GetDocuments(documentNames);
}

Fiddler显示请求的内容类型为Multipart/form-data;

但是我得到一个错误的响应:

{"Message":"此资源不支持请求实体的媒体类型'Multipart/form-data'。","ExceptionMessage":"没有MediaTypeForall可用于从媒体类型'Multipart/form-data'的内容中读取类型'IENumable1'的对象。","ExceptionType":“系统。网。http://http.
"StackTrace":"at System.网。http://http.HttpContent扩展。ReadAsAsync[T](HttpContent内容,类型,IENumable
1格式化程序,IFormatterLogger格式化记录器,取消令牌取消令牌)\r\n在System.网页。http://http.模型绑定。格式参数绑定。ReadContentAsync(HttpquiestMessage请求,类型,IENumable'1格式化程序,IFormatterLogger格式化记录器,取消令牌取消令牌)"}

我已尝试将键设置为documentNamesdocumentNames[]documentNames[0]

我已尝试将正文选择为x-www-form-urlencoded。当我这样做时,API接收到一个空集合。

我已尝试选择一个实体作为raw。当我这样做时,API接收null作为参数。

问题

  1. 如何使用表单数据发送字符串数组
  2. 如何使用x-www-form-urlencoded发送字符串数组
  3. 如何将字符串数组作为原始JSON发送

共3个答案

匿名用户

将其作为JSON数组传递,并选择如下所示的raw选项

用于API方法签名

    public void Post([FromBody] IEnumerable<string> value)
    {
      //some processing
    }

匿名用户

如果要通过参数初始化数组,可以这样做。

匿名用户