使用刷新数据再次单击后发送http请求

时间:2017-05-18 15:22:53

标签: angular

我正在通过rest api检索数据,在第一次请求后,即使我订阅,我也无法刷新数据。其余的api在每次请求后都会向我发送一个随机数据,目前我只能发送一个请求。我做错了什么?

imageContent.component.hmtl

<div *ngFor="let x of data;">{{x}}</div>

imageContent.component.ts

this.apiService.callDataForReview()
   .subscribe(result => {this.data=result, console.log(result)},
     error => this.handleError = <any>error);
} 

apiService.ts

callDataForReview(): Observable<any> {
         this.isLoading = true;
         let url = '/rest/v4/jobs/' + this.keyID;
         let headers = new Headers({'Content-Type': 'application/json'});
         return this.http
             .post(url, JSON.stringify(this.jsonData), {headers:headers})
             .map((res) => {
                    if (res) {

                        if (res.status === 201) {
                            this.isLoading = false;
                            console.log(res.json().outputValues['json-output-14'])

                            return [res.json().outputValues['json-output-14']];
                        }
                        else if (res.status === 200) {
                            this.isLoading = false;
                          console.log(res.json().outputValues['json-output-14'])

                            return [res.json().outputValues['json-output-14']];
                        }else{
                          alert('Etwas ist schief gelaufen. Probiere es noch einmal!')
                        }
                    }
                }).catch((error: any) => {
                    if (error.status === 500) {
                        return Observable.throw(new Error(error.status));
                    }
                    else if (error.status === 400) {
                        return Observable.throw(new Error(error.status));
                    }
                    else if (error.status === 409) {
                        return Observable.throw(new Error(error.status));
                    }
                    else if (error.status === 406) {
                        return Observable.throw(new Error(error.status));
                    }
                });



         }

0 个答案:

没有答案