【问题标题】:Simulate Upload in Chrome Postman WebApi在 Chrome Postman WebApi 中模拟上传
【发布时间】:2017-05-13 05:03:26
【问题描述】:

我正在尝试使用 Chrome Postman 将 FileUpload 模拟到我的 ASP.NET WebApi 方法。为此,我在 Postman 中执行以下步骤。

1.打开邮递员,从地址栏选择POST方式。 2.输入有效的网址。 3.转到地址栏下方的正文部分。 4.从正文部分选择二进制选项。 5.点击“选择文件”按钮选择要上传的文件。 6.选择文件 7.确保选择了“发布”选项 8.点击“发送”

然后我测试 MultiPartContent,但是当我逐步执行我的方法时,请求对象似乎没有我需要的信息。下面的异常会被命中。

public List<Premium.Model.BureauModUpdate> Post() {
        HttpRequestMessage request = this.Request;
        if (!request.Content.IsMimeMultipartContent()) {
            throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
        }

}

请求中似乎没有任何有关文件上传的信息。对请求内容的审查得出以下结论:

{Method: POST, RequestUri: 'http://localhost/WCAPI/Lookup/BureauModUpdate/CreateNyModUpdates', Version: 1.1, Content: System.Web.Http.WebHost.HttpControllerHandler+LazyStreamContent, Headers:
{
  Cache-Control: no-cache
  Connection: keep-alive
  Accept: */*
  Accept-Encoding: gzip
  Accept-Encoding: deflate
  Accept-Encoding: br
  Accept-Language: en-US
  Accept-Language: en; q=0.8
  Host: localhost
  User-Agent: Mozilla/5.0
  User-Agent: (Windows NT 6.1; WOW64)
  User-Agent: AppleWebKit/537.36
  User-Agent: (KHTML, like Gecko)
  User-Agent: Chrome/55.0.2883.87
  User-Agent: Safari/537.36
  Postman-Token: 23f64855-3b60-3f87-3aa1-ba7d0a841273
  Origin: chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop
  Content-Length: 200284
  Content-Type: application/x-www-form-urlencoded
}}

还有什么我需要做的吗?如果有人对此有任何建议或可以指出正确的方向,将不胜感激。

【问题讨论】:

    标签: c# asp.net asp.net-web-api postman


    【解决方案1】:

    我认为您的内容类型不正确。上传文件时应该是multipart/form-data

    application/x-www-form-urlencoded 仅在发布不含二进制数据的表单时使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-19
      • 2018-04-04
      • 2018-02-18
      • 1970-01-01
      • 1970-01-01
      • 2015-03-13
      • 1970-01-01
      • 2021-08-16
      相关资源
      最近更新 更多