我尝试捕获其余网络服务的一些错误代码:
409
当服务器返回0
时,我也会在控制台上获得输出,但如果返回Object { _body: error, status: 0, ok: false, statusText: "", headers: Object, type: 3, url: null }
代码,则只显示{{1}}。我正在使用rc6。有人有想法吗?
输出:
{{1}}
答案 0 :(得分:1)
我以前习惯使用return this.http.put('/mandators/' + mandator.uuid, {name: mandator.name})
.map(res => {
console.log(res.status);
res.json();
})
.subscribe(
data => console.log(data),
err => console.log(err),
() => console.log('yay')
);
功能,因为它更清洁。如果我在你身边,我会做这样的事情:
...
getStreams() : Observable<Stream[]>{
// ...using get request
return this.http.get(this.streamsUrl)
// ...and calling .json() on the response to return data
.map((res:Response) => res.json())
//...errors if any
.catch((error:any) => Observable.throw(error.json().error || 'Server error'));
...
修改强>
我正在使用Angular2 rc5,我刚刚更新到rc6,现在,经过一些重构,这是我的工作代码:
service.stream.ts
loadStreams(){
// Get all comments
this.streamsService.getStreams()
.subscribe(
streams => this.streams= streams, //Bind to view
err => {
// Log errors if any
console.log(err);
});
stream.component.ts
import styles from './style.css';
const Header = () => {
return (
<header className={styles.main}></header>
)
};
export default Header;