0
我有一個簡單的應用程序在碼頭集裝箱上運行。這個容器並不是一直在運行。它開始,做某些工作並停止。當它啓動時,我想通過socket.io將它連接到服務器。我曾嘗試使用socket.io-client
,但仍無法使其正常工作。這是我的應用程序代碼:如何通過socket.io連接節點應用程序到服務器?
var docker_host_ip = process.env.DOCKER_HOST_IP;
var address = 'http://' + docker_host_ip +":" + port;
console.log("console : " + address);
var socket = require('socket.io-client')(address);
socket.on("disconnect", function(){
console.log("disconnected ");
});
socket.on("connect_failed", function(err){
console.log("err : " + err);
});
socket.on('connect', function(){
console.log("connected");
});
socket.on('news', function(data){
console.log("data : " + data);
socket.emit("news", {docker: "This is docker"});
});
socket.emit("news", {docker: "This is docker"});
socket.on('error', function (err) {
console.log(err);
});
我用這個https://github.com/socketio/socket.io-client。
var port = 4000;
app.use(express.static('.'))
var http = require('http').Server(app);
var io = require('socket.io')(http);
io.on('connection', function(socket){
socket.emit("news", {"hello": "hello"});
socket.on("news", function(data){
console.log("new " + data);
io.sockets.emit("news", data);
});
socket.on('disconnect', function() {
console.log('Got disconnect!');
});
});
app.get("/", function(res, req){
req.sendFile(path.join('/index.html'));
});
http.listen(port, function(){
console.log('listening on *' + port);
});
我的應用程序沒有顯示任何錯誤,但沒有發送消息。我的服務器通過瀏覽器正常工作(使用socket.io)。 有人可以告訴我什麼是錯的?
就是在第一部分和第二部分之間的差值Δθ –
如果發生連接錯誤,客戶端會發出['connect_error'](https://github.com/socketio/socket.io-client#events)事件,您沒有收聽。 – robertklep
我想兌現錯誤。但仍然沒有錯誤,沒有反應。 – dmx