使用socket.io

时间:2017-12-30 08:17:43

标签: node.js socket.io

我最近在我的一个长期项目中进入了socket.io。这可能就是为什么我有这么难的原因,因为他们的“入门”部分没有考虑到你可能已经深入开发自己的应用程序了。主要问题是连接,它不会这样做,客户端就是。

我不断得到一个由404 not found引起的CANNOT POST /socket.io/哪个是正确的,它显然不明显,主要是因为那不是socket.io位置所在(它在node_modules中通常)。其次,如果我为此创建一条路线,它绝对没有。所以这里是代码初始化它:

/*jshint esversion: 6*/
const express = require('express');
const http = require('http');
const bodyParser = require('body-parser');
const path = require('path');
const expressValidator = require('express-validator');
const flash = require('connect-flash');
const session = require('express-session');
const passport = require('passport');
const db = require('./config/db');

// Init App
const app = express();

// Init http server
const server = http.createServer(app);

// init socket
const io = require('socket.io').listen(server);

以下是尝试连接到它的客户端:

if (window.location.hostname == 'playkog.net' || window.location.hostname == 'www.playkog.net') {
  var port = 443;
} else {
  var port = 8080;
}

var connected = false;
var socket = io.connect(window.location.hostname + ':' + port, { 'connect timeout': 5000 });

// Connection Successful
socket.on('connect', function () {
  console.log('a user connected');
  connected = true;
});

socket.on('disconnect', function () {
  console.log('user disconnected');
  connected = false;
});

我想我必须连接到另一个端口,但是我不确定哪个,也不是我的问题(或者只是问题)。当然这对于这类东西来说是非常新的(最好是业余爱好者),其中一些东西就在我的头上。

以下是我的控制台的屏幕截图

Screenshot of the console

0 个答案:

没有答案