如何在浏览器上运行node.js客户端

时间:2015-01-21 04:13:24

标签: javascript node.js

大家

我对node.js很新。 我正在尝试做一个tcp服务器< - >客户端使用node.js.到现在为止还挺好。 服务器脚本可以运行Ok。 客户端脚本也可以正常运行。

但问题是我只能通过输入命令(node client.js)让客户端从终端运行。
问题是我想在浏览器中运行它,以便我可以从浏览器上的服务器显示中获取数据。

我该怎么做?

请帮忙。

凯因。

这是客户端代码。 (我不记得是谁最初创建了这个脚本。我从某个地方复制并粘贴它,但忘记了我从中获取链接的书签。很抱歉没有把这个功能归功于这个脚本的所有者。)

var net = require('net');

var HOST = '192.168.0.88';
var PORT = 8888;

var client = new net.Socket();
client.connect(PORT, HOST, function() {

    console.log('CONNECTED TO: ' + HOST + ':' + PORT);
    // Write a message to the socket as soon as the client is connected, the   server will receive it as message from the client 
    client.write('B2\r\n');
});

// Add a 'data' event handler for the client socket
// data is what the server sent to this socket
client.on('data', function(data) {
    console.log('DATA: ' + data);
    // Close the client socket completely
    client.destroy();
});

// Add a 'close' event handler for the client socket
client.on('close', function() {
    console.log('Connection closed');
}); 

谢谢。

3 个答案:

答案 0 :(得分:8)

Node.js不是浏览器javascript。它有很多部分使用浏览器上下文中不可用的操作系统功能。在停留在客户端的浏览器中执行您希望执行的操作的方法是不使用TCP套接字,而是查看WebSockets(例如,socket.io,它提供服务器和浏览器客户端)。 / p>

答案 1 :(得分:1)

时代在变。刚刚宣布可能很快就会在浏览器中使用 node.js。查看此链接:Run Node.js in the browser

答案 2 :(得分:-4)

问题是我想在浏览器中运行它,以便我可以从浏览器上的服务器显示中获取数据。

我认为你需要' http'模块。

var http=require('http');
var server=http.Server(function(req,res) {
    res.end('<p>hello world</p><script>alert("hello world")</script>');
});

server.listen(8080);

因此您可以通过输入网址&#39; localhost:8080&#39;

从浏览器端获取数据