gpt4 book ai didi

node.js - 以编程方式编辑 unix 主机文件

转载 作者:太空宇宙 更新时间:2023-11-04 01:40:06 25 4
gpt4 key购买 nike

我目前正在使用主机文件将所有流量重定向到特定外部主机到我的机器,以便我的(nodejs)应用程序拦截它。

/etc/hosts: 

127.0.0.1 externalhost.com

我的应用程序接收所有应该发送到 externalhost.com 的流量,然后决定是否发送

a) 将请求转发到原始资源(例如,向 externalhost.com/target_B 发出请求)

b) 拦截请求并发回自定义响应(例如对 externalhost.com/target_A 的请求)

但是,原始资源是我在主机文件中定义的主机,因此,创建了一个无限循环。

有没有办法以编程方式禁用主机重定向?由于性能原因,我不想每次都写入该文件。

最佳答案

我认为这种情况下的解决方案是在从代码重定向请求时尝试绕过 /etc/hosts 文件。

您可以尝试使用内置的dns模块解析外部主机的IP地址,然后在请求中使用该IP地址,而不是主机名。

dns.resolve4('externalhost.com', function (err, res) {
var ip = res[0];
console.log('IP address of externalhost: ' + res[0])
request(ip + "/target_A")
})

关于node.js - 以编程方式编辑 unix 主机文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53217054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com