Node.js 实时服务器上的socket.io.授权错误,但本地主机中没有

Node.js 实时服务器上的socket.io.授权错误,但本地主机中没有,node.js,socket.io,Node.js,Socket.io,我不熟悉node js和socket.io。我正在使用NodeJS和socket.io在我的网站上实现聊天模块。我已经在我的本地主机上成功地实现了它,它工作得很好,但是在实时服务器上上传文件后,它就不工作了。 在服务器上运行app.js文件时出现的错误- var chatpage=io.of('/chatpage')。授权(功能(握手数据、呼叫数据 ^ TypeError:Object#没有方法“授权” 这是我的app.js文件代码- var express = require('express

我不熟悉node js和socket.io。我正在使用NodeJS和socket.io在我的网站上实现聊天模块。我已经在我的本地主机上成功地实现了它,它工作得很好,但是在实时服务器上上传文件后,它就不工作了。 在服务器上运行app.js文件时出现的错误-

var chatpage=io.of('/chatpage')。授权(功能(握手数据、呼叫数据 ^ TypeError:Object#没有方法“授权”

这是我的app.js文件代码-

var express = require('express');
var app = express();
var socket = require('socket.io');
var server = app.listen(3000);
var io = socket.listen(server);
var async = require('async');
var mysql= require('mysql');
var pool  = mysql.createPool({
  host      : 'localhost',          
  user      : 'root',   
  password  : 'admin',
  database  : 'mychat'
});
var chatserver=require('./chatserver.js');
var chatpage=io.of('/chatpage').authorization(function (handshakeData, callback) {
  console.dir(handshakeData);
  handshakeData.page = 'chatpage';
  callback(null, true);
}).on('connection', function (socket) {
  console.dir(socket.handshake.page);
  chatserver.getUserFeeds(chatpage,socket,io,pool,async);
});
客户端页面上的连接-

var socket = io.connect('http://localhost:3000');
        var chatpage=socket.of('/chatpage')
            .on('connect_failed', function (reason) {
                console.error('unable to connect chatpage to namespace', reason);
            })
            .on('error',function(reason){
                console.error('unable to connect chatpage to namespace', reason);
            })
            .on('reconnect_failed',function(){
            })
            .on('connect', function () {
                console.info('sucessfully established a connection of chatpage with the namespace');
                chatpage.emit('senddata',{user_id:user_id,room_id:room_id});
            });

请帮助我找出哪里做错了。

您能验证本地和服务器计算机上的socket.io版本是否相同吗?嗨,alandarev,是的,服务器(本地和实时)上的版本都相同。