Angular2 - 如何捕获rxjs map()函数的异常

时间:2017-06-01 07:16:02

标签: angular rxjs

我有一个angular2服务,它调用一个我希望返回一个对象的服务器。出错时,服务器返回HTML Error网页。 我希望捕获何时返回该网页而不是对象,以便在map()函数中对响应应用map()方法,这将导致错误。

我尝试在getServerObject(objId: string) : Observable<ServerObject> { const url = environment.serverURL + '?objId=' + objId; return this.http.get(url) .map( res => { try { res.json(); } catch(err) { console.error('ERROR: ' + err); } } ) .catch(this.handleServerError); } 部分尝试使用try-catch块:

catch

不幸的是,即使res.json();失败,执行也永远不会到达var request = URLRequest(url: NSURL.init(string: "YOUR_URL") as! URL) request.httpMethod = "POST" request.setValue("application/json", forHTTPHeaderField: "Content-Type") request.timeoutInterval = 10 // 10 secs let postString = "param1=\(var1)&param2=\(var2)" request.httpBody = postString.data(using: .utf8) Alamofire.request(request).responseJSON { response in // do whatever you want here } 块。

我能做些什么才能抓住这个案子?

0 个答案:

没有答案