My catch error method is not catching error if server is down.
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
return this.http.post(this.PATH + '/signup', details, options)
.map(res => res.json())
.catch(res => Observable.throw(res['_body']));