上传文件Angular 2

时间:2016-06-14 08:46:54

标签: rest file-upload angular

目前正在玩Angular 2 RC。

是否有任何教程/文章可以帮助我了解通过REST调用将文件上传到后端?

我已经通过了this,但感觉应该有更方便的方法。

1 个答案:

答案 0 :(得分:3)

如果您等待RC2,您将能够使用除文本之外的其他有效负载。

例如Blob个:

var headers = new Headers({'Content-Type': 'text/css'});
var body = new Blob(['body { color: red; }']);

return this.http.post('/url', body, { headers });

Arraybuffer个:

var headers = new Headers({'Content-Type': 'text/css'});

var body = new ArrayBuffer(512);
var longInt8View = new Uint8Array(body);
for (var i = 0; i < longInt8View.length; i++) {
  longInt8View[i] = i % 255;
}

return this.http.post('/url', body, { headers });

FormData个:

var body = new FormData();
body.append('test1', 'val1');
body.append('test2', 123456);
var blob = new Blob(['body { color: red; }'], {type: 'text/css'});
body.append("userfile", blob);

return this.http.post('/url', body, { headers });

处理HTTP请求的二进制内容要容易得多。现在,由于Angular2只接受文本有效负载作为输入,因此很难(而且很容易)。