如何在Angular 4 PUT请求中分配头并使用请求主体?

时间:2018-07-02 11:38:34

标签: angular httpclient response put

我正在尝试使用PUT请求使用angular 4的HttpClient上传一个csv文件。接受的标头是application / octet-stream。

我的http放置请求如下:

public uploadFileToDm(uploadUrl,file): any {
    return this.http.put(uploadUrl,file,{ headers: new HttpHeaders({ 'Content-Type': 'application/octet-stream' }) }).
    map((response: Response) => {
      if (response.status === 200) {
        console.log("confirm");
      } else {
        return Observable.throw(uploadUrl + 'upload failed:' + response.status);
      }
    }).catch((error: Response) => {
      console.log('Error occured while getting upload urls.' + error);
      return Observable.throw(error);
    });
  }

我如何获得响应代码和状态?

1 个答案:

答案 0 :(得分:0)

您订阅活动的地方。将map运算符中的代码移至subscribe

this.uploadFileToDm().subscribe(data => {
  if (response.status === 200) {
        console.log("confirm");
      } else {
        return Observable.throw(uploadUrl + 'upload failed:' + response.status);
      }
})