在angular 5服务发布请求中处理脱机服务器

时间:2018-07-16 07:52:21

标签: node.js angular cors

当我的节点后端不见了时,我想处理它。我正在将MEAN-Stack和CORS-Middleware与app.use(cors())一起使用。

所以我尝试在请求中使用rxjs timeout->

return this.http.post('http://192.168.45.20:3000/bookings/', booking, {headers: headers})
    .timeout(3000)
    .map(res => res.json());
}

服务器在线时,一切正常,但是当请求发送且服务器离线时,我直接收到错误消息

  

跨源请求被阻止:同源策略禁止阅读   https://192.168.45.20:3000/bookings上的远程资源。 (原因:   CORS攻击失败)。

那么我该如何处理我的angular 5服务中的服务器脱机状态?

1 个答案:

答案 0 :(得分:1)

您能做的最好的就是

  • 通过服务工作者(https://angular.io/guide/service-worker-getting-started)向您的angular应用程序添加缓存逻辑
  • 在网络不可用时进行检测(您可以选择向用户提供视觉反馈)。使用本地存储保存系统,借助复制系统,您可以安排网络可用时的更新

PS:Http拦截器可用于此目的