2016-05-17 40 views
0

我只是很想知道,是否有任何可能性使用NodeJS在同一局域网中的不同机器上打开/触发浏览器。有什么办法可以使用节点js从不同的机器打开浏览器?

我已经通过节点的默认'http.createServer()'和browserSync。使用它们,我可以创建一个服务器并在其他机器上打开该页面。但不知道如何自动触发浏览器/选项卡。

谢谢!

+0

不知道我完全理解你想要做什么,但也许这将有助于... https://www.npmjs.com/package/open? – dan

+0

谢谢@ dan75。我会尽力解释。可以说我有2台电脑A和B.我正在计算机A上工作。我想在计算机B的任何浏览器中自动打开一些URL。 – Lokesh

+0

所以你有一台机器B,并在A上工作。你将不会从A&B中做任何事情,URL将被打开。你想要吗? –

回答

1

这是一个针对您的问题的大规模简化解决方案,正如您所知,围绕此功能存在重要的安全考虑因素。

但是,使用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。

+0

很酷。非常感谢。它按我的预期工作。 – Lokesh

+0

不用担心:)很高兴帮助。 – dan

相关问题