您好我是Nodejs的新手并表达框架。
我正在实现一个简单的CRUD应用程序,用户希望从MS窗口访问该页面。我希望记下当前的Windows用户名。
我尝试在页面上记录User-Agent字符串,似乎User-Agent不包含windows用户名。这是真的?什么是实现这个的正确方法?
res.render('search', {user: req.get('User-Agent')});
然后在玉,
body
p welcome, #{user}!
这是我得到的:
Welcome, Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36!
答案 0 :(得分:3)
User-Agent
不包含Windows用户名。有关详细信息,请查看Wikipedia。
您的问题的可能解决方案可能是NTLM身份验证。要添加此安装并选择将express-ntlm保存为依赖项:
npm install express-ntlm [--save]
然后要求并将其添加为中间件以表达:
var ntlm = require('express-ntlm');
app.use(ntlm());
然后,您就可以使用jade中的UserName
:
body
p welcome, #{ntlm.UserName}!
如果您想要使用Active Directory执行真正的 NTLM身份验证并验证凭据,您也可以这样做:
app.use(ntlm({
domain: 'MYDOMAIN',
domaincontroller: 'ldap://myad.example',
}));