我正在使用multicast-dns
节点模块尝试进行此项工作。使.local解析为IP地址和端口(mdns)
展望在浏览器了custom.local
给我的控制台消息我的设置,但我无法看到我的实际服务器上运行(这是在localhost:12345
,其中12345
是一个动态的数字这样做)。我想在访问custom.local
时能够看到我的本地服务器。这可能吗?
下面是一些代码:
mdns.on("query", query => {
if (query.questions[0] && query.questions[0].name === "custom.local") {
console.log(query);
mdns.respond({
answers: [
{
name: "custom.local",
type: "SRV",
data: {
port: n.get("p"), // dynamic port
weight: 0,
priority: 10,
target: ip // local IP
}
}, {
name: "custom.local",
type: "A",
data: ip,
ttl: 300
}
]
});
}
});
编辑:我可以连接到我的本地服务器就好了,这是不是一个问题。
如果您无法通过'localhost:12345'(或通过任何IP /端口组合运行)连接到您的服务器,那么MDNS不是您的问题,您的实际服务器是。 –
您不能在DNS中放置端口号。 DNS仅用于按名称查找IP。为了您的浏览器仅通过名称查看它,您需要在服务前使用代理程序,或者需要在端口80上运行服务本身。端口号实际上不应该是动态的。你应该在设置你的服务中指定它 – Cfreak
@Cfreak啊好吧,谢谢你的信息! –