sqr*_*sqr 5 user-agent node.js express
嗨,我是 Nodejs 和 Express 框架的新手。
我正在实现一个简单的 CRUD 应用程序,用户希望从 MS Windows 访问该页面。我想注销当前的 Windows 用户名。
我试过在页面上记录 User-Agent 字符串,似乎 User-Agent 不包含 Windows 用户名。这是真的?什么是实现这一点的正确方法?
res.render('search', {user: req.get('User-Agent')});
Run Code Online (Sandbox Code Playgroud)
然后在玉,
body
p welcome, #{user}!
Run Code Online (Sandbox Code Playgroud)
这是我得到的:
Welcome, Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36!
Run Code Online (Sandbox Code Playgroud)
在User-Agent不包括Windows用户名。请查看维基百科以获取更多信息。
您的问题的一个可能解决方案可能是 NTLM 身份验证。要添加此安装并可选择将express-ntlm保存为依赖项:
npm install express-ntlm [--save]
Run Code Online (Sandbox Code Playgroud)
然后 require 并添加它作为中间件来表达:
var ntlm = require('express-ntlm');
app.use(ntlm());
Run Code Online (Sandbox Code Playgroud)
然后,您将能够使用UserNamein jade:
body
p welcome, #{ntlm.UserName}!
Run Code Online (Sandbox Code Playgroud)
如果您想进行真正的NTLM 身份验证并使用 Active Directory 验证凭据,您也可以这样做:
app.use(ntlm({
domain: 'MYDOMAIN',
domaincontroller: 'ldap://myad.example',
}));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6647 次 |
| 最近记录: |