我只是很想知道,是否有任何可能性使用NodeJS在同一局域网中的不同机器上打开/触发浏览器。有什么办法可以使用节点js从不同的机器打开浏览器?
我已经通过节点的默认'http.createServer()'和browserSync。使用它们,我可以创建一个服务器并在其他机器上打开该页面。但不知道如何自动触发浏览器/选项卡。
谢谢!
我只是很想知道,是否有任何可能性使用NodeJS在同一局域网中的不同机器上打开/触发浏览器。有什么办法可以使用节点js从不同的机器打开浏览器?
我已经通过节点的默认'http.createServer()'和browserSync。使用它们,我可以创建一个服务器并在其他机器上打开该页面。但不知道如何自动触发浏览器/选项卡。
谢谢!
这是一个针对您的问题的大规模简化解决方案,正如您所知,围绕此功能存在重要的安全考虑因素。
但是,使用open
这可以很容易地在本地网络上完成(提供正确的防火墙规则)。
计算机B(浏览器应在打开机器):
var http = require('http');
var open = require("open");
function handleRequest(request, response){
open("http://www.google.com", "firefox");
}
var server = http.createServer(handleRequest);
server.listen(8080, function(){
console.log("Server listening on: http://localhost:8080");
});
计算机A(本机触发从浏览器开口):
var http = require('http');
var options = {
host: '<Computer A IP address>',
port: 8080,
path: '/'
};
http.request(options).end();
当运行在计算机B上的代码,如果你运行计算机A代码,那么它应该在计算机A上的http://www.google.com上打开Firefox。
不知道我完全理解你想要做什么,但也许这将有助于... https://www.npmjs.com/package/open? – dan
谢谢@ dan75。我会尽力解释。可以说我有2台电脑A和B.我正在计算机A上工作。我想在计算机B的任何浏览器中自动打开一些URL。 – Lokesh
所以你有一台机器B,并在A上工作。你将不会从A&B中做任何事情,URL将被打开。你想要吗? –