POST服务参数不会绑定到请求体,数组作为属性Angular2 typescript

时间:2016-05-11 20:46:39

标签: javascript c# http typescript angular

我正在尝试向webapi post服务发送一个具有两个int和一个字节数组属性的复杂对象。如果我仅使用填充的两个int属性发送参数,则body值将绑定到服务参数。填充数组后,服务参数为空。

该应用程序的总体目的是将段中的文件发送到要保存的数据库。

之前有没有人处理类似的事情?感谢您的任何帮助。

这是进行http POST调用的服务功能

uploadChunk(params: FileParams, success) {
    let body = JSON.stringify({ fileId: new Number(params.fileId), chunkId: new Number(params.chunkId), chunk: new Array(params.chunk) });
    //let body = JSON.stringify({ fileId: params.fileId, chunkId: params.chunkId, chunk: new Array(params.chunk), totalSegments: 0, valid: new Boolean(false), fileName: " ", dateCreated: " ", un: " ", accessToken: " " });
    //let body = JSON.stringify({ params });
    let url = this._fileUrl + 'api/file/UploadChunk';
    debugger;

    return this.http.post(url, body, this.postOptions)
        .toPromise()
        .then((res: Response) => success(res.json()))
        .catch(this.error);
} 

这是FileParams对象

export class FileParams {    
    fileId: number;
    chunkId: number;
    chunk: Int8Array;
}

我在服务中使用的标题

postHeaders      = new Headers({ 'Accept': 'application/json', 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8' });

这里的相关内容是服务方法的开始

[HttpPost]
public int UploadChunk([FromBody]FileUploadParams c)
{ }

0 个答案:

没有答案