簡體   English   中英

Socket.io客戶端簡單客戶端/服務器測試無法連接-Node.js

[英]Socket.io-client simple client/server test wont connect - Node.js

我正在嘗試使用socket.io和socket.io-client在Node.js中進行一些簡單的通信。

我有兩個腳本,server.js和client.js。

server.js腳本可以綁定到網絡端口,並像普通的server / socket.io主機一樣工作,當與瀏覽器客戶端一起使用時,它們都可以工作,

但是client.js(在另一個節點腳本中運行)不起作用,只是等待不輸出任何內容。 我希望client.js中的socket.io-client連接到server.js中的socket.io實例,並且兩者都在其控制台中顯示一條消息以表明已連接。

server.js代碼:

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

app.get('/', function(req, res){
    console.log("\nNew server request: "+req.url+"\n");

    // sends a html file with a script that connects
    // to socket.io running in server.js
    res.sendFile(__dirname+'/webroot/index.html');
});

// listens for connections
io.on('connect', function(socket){
  console.log('a client connected');
});

// start listening on server
http.listen(9000, function(){
  console.log('listening: 9000');
});

client.js代碼:

var io = require('socket.io-client');

// connect to server.js socket
var socket = io('http://hostsite.com', {
    port: 9000
});

socket.on('connect', function(){
    console.log("connected\n");
});

用npm安裝

npm install socket.io // version: 1.0.6
npm install socket.io-client // version: 1.0.6
npm install express // version: 4.8.5

理想情況下,我不想使用Express或http服務器,而只是兩個Node.js腳本之間的套接字通信,一個在服務器計算機上,一個在客戶端計算機上。

謝謝你的幫助 :)

由於某種原因,當我使用它時它不會連接:

npm install socket.io-client

and

require('socket.io-client');

但是如果我使用主軟件包附帶的客戶端,它確實可以連接

npm install socket.io

and

require('socket.io/node_modules/socket.io-client');

花了一點時間來弄清楚,但希望現在這將花費別人更少的時間。 如果他們面臨同樣的問題。

你有沒有嘗試過:

var socket = io.connect('http://hostsite.com:9000');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM