在需要用户登录身份验证的网站上使用restify

时间:2015-12-19 12:14:24

标签: javascript node.js authentication express restify

我一直在使用restify作为REST API服务器。我也使用angularjs,前端html,css,js文件托管在Apache网络服务器上。我想为此webapp添加用户登录身份验证。

用户需要登录才能访问网络应用。如果未经过身份验证,则会将其重定向到www.webroot.com/login.html的默认网址。

谷歌搜索后,我发现大多数node.js代码示例都基于Express。在我的背景下,使用Express会是更好的选择吗? Express似乎更加集成,因为它也充当了网络服务器。我的偏好是使用restify,因为我现有的应用程序是用来解决的。还可以用来做工作吗?

1 个答案:

答案 0 :(得分:0)

看一下这个模块restify-ensure-loginhttps://www.npmjs.com/package/restify-ensure-login

  

此中间件可确保用户已登录。如果请求是   如果未经身份验证,请求将被重定向到   登录页面。 URL将保存在会话中,因此用户可以   方便地返回到最初请求的页面。

从你的问题来看,你似乎有错误的观念认为,与Express不同,restify无法充当静态网络服务器。事实上,restify能够充当静态网络服务器,而且只需几行代码即可完成。你走了;

server.get(/.*/, restify.serveStatic({
    'directory': 'static', //html, css files placed in static folder
    'default': 'index.html'
}));