无法使用Angular2上传文件+数据

时间:2017-02-07 15:14:47

标签: angular asp.net-web-api

我遇到了一个问题,我需要将数据对象和文件上传到我的asp.net WebAPI服务器。以前我的对象的POST操作正常,但现在我必须上传一个文件,其中包含我无休止的问题。

这是我接受供应商对象和文件的服务:

createSupplier(supplier: Supplier, file: any) {
    var headers = new Headers();
    headers.append('Content-Type', 'multipart/form-data');
    headers.append('Accept', 'application/json');
    var input = new FormData();
    input.append("file", file, file.name);
    input.append("supplier", supplier);

    return this._http.post(this._globalService.getURL() + "api/supplier", input, { headers: headers }).map(res => res.json())
}

我的WebApi服务器:

    [HttpPost]
    [Route("api/supplier")]
    public IHttpActionResult AddSupplier([FromBody]Supplier supplier, [FromBody] dynamic file)
    {
        var result = supplierSVC.AddSupplier(supplier);
        if (result.isSuccessful)
        {
            return this.Content(HttpStatusCode.OK, new { response = result.Message });
        }
        return this.Content(HttpStatusCode.BadRequest, new { response = result.Message });
    }

我收到错误:

  

此资源不支持请求实体的媒体类型“multipart / form-data”。

  

没有MediaTypeFormatter可用于从媒体类型为“multipart / form-data”的内容中读取“供应商”类型的对象。

真的不确定将数据发送到什么格式,因为它是一个混合的数据包。任何帮助都会感激不尽

0 个答案:

没有答案