node Socket.io链接如何在服务器中提供not localhost(wamp/xampp)

Gop*_*nan 15 php node.js socket.io

我是套接字会话的新手,但我学会了它在wamp/xampp localhost中的工作原理.但是,当我搬到托管服务器.不起作用.

<script src="http://localhost:3000/socket.io/socket.io.js"></script>
Run Code Online (Sandbox Code Playgroud)

在wamp/xampp上面这项工作.但在托管服务器中找不到.我应该在src上给出什么.我的主机是:aaa.bbb.com,它的端口是8803或bbb.com,它的端口是8803.

我已经尝试过将这些方式包括在内

<script src="/socket.io/socket.io.js"></script>
<script src="http://aaa.bbb.com:3000/socket.io/socket.io.js"></script>
<script src="http://bbb.com:3000/socket.io/socket.io.js"></script>
Run Code Online (Sandbox Code Playgroud)

我的服务器端代码是

var express = require('express');
var app = express();
var socket = require('socket.io');
var server = require('http').createServer(app);
server.listen(3000);
var io = socket.listen(server);
var async = require('async');
var mysql= require('mysql');
var pool  = mysql.createPool({
   host     : 'XXXXX',
   user     : 'XXXXX',
   password : 'XXXX',
   database:'XXXXX',
 });

 var chatserver=require('./chatserver.js');
 var chatpage=io.of('/as/chatRoom').authorization(function (handshakeData, callback) {
 console.dir(handshakeData);
 handshakeData.page = '/welcome/chatRoom';
 callback(null, true);
 }).on('connection', function (socket) {
   console.dir(socket.handshake.page);
   chatserver.getUserFeeds(chatpage,socket,io,pool,async);
});
Run Code Online (Sandbox Code Playgroud)

Dec*_*rNT 4

在 Node 的 index.js 的服务器端,您需要在 http 服务器上要求 io

var 
app = require('express')(),
http = require('http').Server(app),
io = require('socket.io')(http);`
Run Code Online (Sandbox Code Playgroud)

我不再使用车把作为我的模板系统,所以,继续吧。在您的主页模板文件中,您将添加

<script>
var socket = io.connect('http://bbb.com:3000');
   socket.on('connect', function(){
       socket.emit('authenticate', {data: "token"});
       socket.on('error', function(err){ alert(err); 
   });
   socket.on('unauthorized', function(err){
       alert("Disconnected");
       console.log("There was an error with the authentication:", err.message);
    });
    socket.on('disconnected', function() { alert('Disconnected') });
 });
 </script>
Run Code Online (Sandbox Code Playgroud)

这对我在实时服务器上有用。