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