On login failure it doesnt display error messgae(spinner loads for infinite time). It's working fine on browser but doesn't work on iphone

private openManifestForDriver(driverUsername: string) {
let self = this;
this.events.publish(‘blocking’, true, ‘Get manifest for driver’);
this.manifestService.getManifestForDriver(driverUsername)
.subscribe(manifest => {
this.events.publish(‘blocking’, false, ‘Get manifest for driver’);
console.log('Success getting manifest for driver: ’ + manifest.manifestNumber);
this.navCtrl.push(ManifestPage, {manifest: manifest, driverName: driverUsername});
},
err => {
this.events.publish(‘blocking’, false, ‘Get manifest for driver’);
console.log('ERR:(getManifestForDriver) >> ’ + err);
if(err.status === 401) { // Handling status 401 when username & password are invalid. Calling logout & showing login failure message
self.message = “Invalid username and password”;
self.userService.logoutUser();
} else {
this.navCtrl.push(ManifestPage, {driverName: driverUsername});
}
}
);
}