Node js代理和动态目标

时间:2019-06-15 22:59:05

标签: html node.js express http

我有一个项目,其中包含70个奇特的IoT设备,所有设备均具有唯一的受限用户级别密码。

目的是创建一个简单的网页来为设备编制索引,并为每个设备提供一个URL链接,单击该链接即可将用户定向到IoT设备页面,并自动登录用户以查看IoT设备的Web GUI。

IoT设备使用基本的Authorization标头来处理访问。我们无法在IoT设备端添加任何代码。

我创建了一个带有节点和express的Web服务器,以及一个带有PUG的简单网站,该网站对设备进行了索引,并为每个设备提供了href链接。

这有效,并且每个链接都导航到所需的设备。下一步是处理Authorization标头。

理想情况下,我完全避免使用代理服务器,但是当在网站上单击href链接时,使用Express Web服务器发送设备的Authorization标头仍然没有成功。

不管是好是坏,我都走了用节点和http创建一个单独的代理服务器的道路(但可以使用其他任何适合的节点代理服务器)。

并且我更改了每个设备的href链接,以指向具有唯一查询ID的代理服务器。仅用1个链接进行测试,我可以使用以下代码片段成功让代理服务器处理Authorization标头:

proxy.on('proxyReq', function(proxyReq, req, res, options) { 
  // allows you to alter the proxyReq request object to send authentication before connection
  proxyReq.setHeader('Authorization', auth); // sends Authorazition header auth
});

对不起,我暂时不在工作中,因此我无法访问当前代码的其余部分。

我已经创建了一个JSON文件,其中包含每个IoT设备的代理查询ID,设备地址和用户凭据,但是我在下一步上有些犹豫,无法动态更改70个设备的代理目标和授权凭据链接。

这之后的第二个问题是如何限制代理服务器,使其仅处理我创建的网站上的请求,以限制代理服务器的使用.....

很抱歉,如果我略过了一些细节,其中的许多内容对我来说都是新手,所以我很感谢任何回复和示例以帮助我学习

0 个答案:

没有答案