【问题标题】:socket.io error undefined is not a functionsocket.io 错误 undefined is not a function
【发布时间】:2014-11-28 16:56:30
【问题描述】:

在服务器上安装了 websocket 和 socket.io。当我加载浏览器页面时,我在控制台中收到此错误: Uncaught TypeError: undefined is not a function (socket.io-1.2.1.js:1)

这是服务器端代码:

// Require HTTP module (to start server) and Socket.IO
var http = require('http'), io = require('socket.io');

// Start the server at port 9602
var server = http.createServer(function(req, res){ 

    // Send HTML headers and message
    res.writeHead(200,{ 'Content-Type': 'text/html' }); 
    res.end('<h1>Hello Socket Lover!</h1>');
});
server.listen(9602);

// Create a Socket.IO instance, passing it our server
var socket = io.listen(server);

// Add a connect listener
socket.on('connection', function(client){ 

    // Success!  Now listen to messages to be received
    client.on('message',function(event){ 
        console.log('Received message from client!',event);
    });
    client.on('disconnect',function(){
        clearInterval(interval);
        console.log('Server has disconnected');
    });

});

以及客户端代码:

<script src="https://cdn.socket.io/socket.io-1.2.1.js"></script>

<script>       
    // Create SocketIO instance, connect
      var socket = new io.Socket('localhost',{
        port: 9602
      });
      socket.connect(); 

      // Add a connect listener
      socket.on('connect',function() {
        console.log('Client has connected to the server!');
      });
      // Add a connect listener
      socket.on('message',function(data) {
        console.log('Received a message from the server!',data);
      });
      // Add a disconnect listener
      socket.on('disconnect',function() {
        console.log('The client has disconnected!');
      });

      // Sends a message to the server via sockets
      function sendMessageToServer(message) {
        socket.send(message);
      }

    </script>

感谢任何帮助。 k4elo

【问题讨论】:

  • 这几天不就是var socket = io();,你确定有io.Socket()功能
  • 什么是 clearInterval(interval);为了?
  • 尝试非缩小版的库可能会有很大帮助,这样错误更有帮助。
  • 只是尝试来自 socket.io 的示例代码,看看我是否可以获得连接。 不工作-未找到。这:
  • 如果有人能指出一个适用于 socket.io 的服务器和客户端示例,我将不胜感激。

标签: javascript node.js websocket socket.io


【解决方案1】:
var socket = io("http://127.0.0.1:9000");

// Add a connect listener
socket.on('connect',function() {
   console.log('Client has connected to the server!');
});

上述方法适用于以下cdn

【讨论】:

    【解决方案2】:

    您是在 HTTP 而不是 HTTPS 上创建服务器

    <script src='/socket.io/socket.io.js'></script>
    

    而不是脚本 src="https://cdn.socket.io/socket.io-1.2.1.js">

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-11
      • 1970-01-01
      • 2015-06-24
      • 2015-05-04
      • 1970-01-01
      • 2021-06-21
      • 1970-01-01
      • 2015-06-13
      相关资源
      最近更新 更多