用户登录

在应用上面发生了异常,我们可以去设计一下怎么去处理这些异常 .. 比如用户没登录,访问创建内容的页面,现在会发生一个 InvalidSessionException ..

现在我们可以让应用在发生这个异常的时候,把页面重定向到用户的登录页面 .. 处理异常可以单独去创建一个 Exception handler .. 或者也可以在 hook 里面去处理 ..

打开 start .. hooks.js ..

在 after.providersBooted 这里 .. 找个地方 .. 先把 Exception 导入进来 .. Exception .. use 一下 Exception ..

下面再用一下 Exception 上的 handle 这个方法 .. 要处理的异常的名字是 InvalidSessionException ... 一个回调 ... 有个 error 参数 ... 还有一个表示请求的 context 参数 .. 我们把 response 从这个参数里解构出来 .. 重定向的时候需要用到这个 response ..

然后 return 一个重定向 .. 用一下 response.route .. 路由的名字是 login ... 这个是我们给登录路由起的一个名字 ... 页面的地址就是 login ...

预览

回到浏览器 .. 再访问一下创建文章内容的页面 ... 因为我没有登录,所以会发生 InvalidSessionException 这个异常 .. 在应用里我们现在处理了这个异常,要做的事情就是把用户带到这个登录页面上 ...

再试一下 ... 找一个文章内容 ... 试着编辑一下这个内容 .. 同样会把我重定向到这个登录页面上 .. 因为编辑内容这个页面也用了 auth 中件间,没登录的话,就会触发 InvalidSesstionException ..

处理这个异常,我们就是把用户带到这个登录页面上 ..

处理异常(发生 InvalidSessionException 异常把用户重定向到登录页面)《 Node.js 应用:中间件与异常 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点