NG2 FormData添加非字符串的其他参数

时间:2017-12-02 23:46:23

标签: angular angular-http form-data

所以,我有文件上传和工作正常,但我需要添加一些非字符串的额外参数。

这就是我的方法现在的样子:

fileChange(event) {
        let fileList: FileList = event.target.files;
        if (fileList.length > 0) {
            let file: File = fileList[0];
            let formData: FormData = new FormData();
            formData.append('url', file, file.name);
            formData.append('name' , 'JKANjksdnkjasd');

            let headers = new HttpHeaders();
            /** No need to include Content-Type in Angular 4 */
            headers.append('Content-Type', 'multipart/form-data');
            headers.append('Accept', 'application/json');
            // let options = new RequestOptions({ headers: headers });

            this.http.post('http://127.0.0.1:8000/rest_api/documents/', formData, {
                headers: new HttpHeaders({
                    'Authorization': 'jwt ' + this.localStorage.getToken()['token'],
                    'Accept': 'application/json'
                })
            })
                .map(res => res)
                .catch(error => Observable.throw(error))
                .subscribe(
                    data => console.log('success'),
                    error => console.log(error)
                )
        }
    }

现在,我想添加一些参数,比如这样,但它不起作用

        formData.append('status' , 1);
        formData.append('type' , 1);
        formData.append('user' , 1);

formData.append()需要字符串作为参数,我无法添加数字。如果我将这些值添加为字符串,服务器就会抛出主键" 1"无法找到。

任何解决方案吗?

0 个答案:

没有答案