Вам нужно выбросить ошибку из вашей первой подписки, чтобы вторая подписка получила ее. Как то так ...
public SendCurrentStep(step: number): Observable<any> {
return this.http.post('https://localhost:9090/NotAvailableUrl', {
'step' : step
})
.map(res => (<any>res)._body === '' ? {} : res)
.catch((error) =>
{
Observable.throw(this.handleError(e)))
});
}
Тогда вы можете точно так же поймать его при второй подписке
this.requestMethods.SendCurrentStep(this.formRegister.currentForm().index).subscribe(() => {
// TODO
}).catch((error) => {
Console.log("There was a problem sending this request");
});
Это то, что вы имели в виду? Если вы имели в виду, как вы можете сказать, что сервер не работает, в отличие от внутренней ошибки сервера или неправильного запроса - вы не сможете. Вы могли бы использовать код ответа?