如何使用Node.js将标头发送到页面?

时间:2019-07-07 05:27:15

标签: javascript jquery node.js express

在每种用户通过登录页面传递其凭据之后,我试图限制对网页上某些元素的访问。

完成此操作的逻辑如下:

  1. 用户在登录页面上输入其凭据。
  2. 如果用户输入正确的凭据,nodejs将重定向到仪表板

以下代码是部分代码,显示了如何将用户重定向到仪表板端点(为了简化此问题,我不希望显示具有完整验证的完整代码)

// nodejs code in the server
app.post('/users/api', function(req, res) {
    res.redirect('/dashboard');
}

我想到了以下方法:

在dashboard.html页面准备就绪时(带有JQuery ready函数),与“ res.redirect”一起发送一些标头以捕获它们,并在用户具有或没有特权的情况下编写一些用于隐藏页面上元素的功能。 / p>

问题是我已经进行了研究,但到目前为止我还不清楚如何进行以及这是否正确。

欢迎提供帮助来构建此代码。

2 个答案:

答案 0 :(得分:1)

您可以在标题中设置授权字段。

要进行授权,您需要通过对Base64字符串进行编码来使用username:password组合。

var username = 'xyz';
var password = '123';
//  The server expects the data to be encoded in Base64.
var auth = 'Basic ' + Buffer.from(username + ':' + password).toString('base64');

var header = {'Host': 'www.example.com', 'Authorization': auth};
var request = client.request('GET', '/', header);

答案 1 :(得分:0)

您可以如下设置标题 res.setHeader('Content-Type','text / html);