1
複数のパラメーターでGET要求を行いたいが、1つしか必要ない。角2 - オプションのヘッダーでのGET要求
現在、私は私の要求を(私は、オプションのパラメータのいずれかなしにコールをしたい)行うには、このコードを持っている:
サービス:
public getAbsenceReservations(From: Date, ReservationStateID?: number, Resource?: string, To?: Date): Observable<models.AbsenceReservation> {
let params: URLSearchParams = new URLSearchParams();
params.set("From", From.toString());
params.set("ReservationStateID", ReservationStateID.toString());
params.set("Resource", Resource);
params.set("To", To.toString());
const path = `${this.apiEndpoint}Time/Absence`;
return this.http.get(path, { search: params })
.map((response: Response) => new models.AbsenceReservation().deserialize(response.json().Data))
.catch(this.handleError);
}
コンポーネント:
private getAbsenceReservations() {
this.loaderService.setEnableLoader(true);
this.AbsenceService.getAbsenceReservations(this.fromDate, this.reservationStateID, this.resource, this.toDate)
.subscribe(
response => {
this.absenceReservations = response;
this.absenceReservationsChange.emit(this.absenceReservations);
this.loaderService.setEnableLoader(false);
},
error => console.log("error")
);
}
エラーが表示されます。または
Cannot read property 'toString' of undefined
もちろん、エラーの原因となるオプションのパラメータはありません。
オプションのパラメータを使用してGETリクエストをコーディングする正しい方法は何ですか?
例
私は0オプションの定義されたオプションの変数に
api.com/?from=timestamp
を持っている場合しかし、私はこの
api.com/?from=timestamp&Resource=RandomString
これは感謝しました! – Nicolas