所以,我有文件上传和工作正常,但我需要添加一些非字符串的额外参数。
这就是我的方法现在的样子:
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"无法找到。
任何解决方案吗?