Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在codeigniter中使用socket.io_Php_Node.js_Socket.io - Fatal编程技术网

Php 在codeigniter中使用socket.io

Php 在codeigniter中使用socket.io,php,node.js,socket.io,Php,Node.js,Socket.io,我想在codeigniter中使用socket.io,我已经在root中完成了所有的过程,比如安装express和socket.io,我还创建了下面的server.js文件 server.js var socket = require('socket.io'); var express = require('express'); var app = express(); var server = require('http').createServer(app); var io = socket

我想在codeigniter中使用
socket.io
,我已经在root中完成了所有的过程,比如安装express和
socket.io
,我还创建了下面的
server.js
文件

server.js

var socket = require('socket.io');
var express = require('express');
var app = express();
var server = require('http').createServer(app);
var io = socket.listen(server);
var port = process.env.PORT || 3000;
server.listen(port, function() {
  console.log('Server listening at port %d', port);
});
io.on('connection', function(socket) {
  socket.on('new_message', function(data) {
    io.sockets.emit('new_message', {
      message: data.message,
      date: data.date,
      msgcount: data.msgcount
    });
  });
});
当我在终端中运行这个
server.js
时,它输出“服务器在端口3000监听”,
但当我在浏览器中请求
localhost:3000
时,它显示
无法获取/
。我不理解此错误。

您正在处理对express router的http请求,该请求未在代码中设置。io正在发送xhr或套接字请求,不处理http请求。使用在线服务,如或raise router,它将接收您的浏览器请求,并通过socket将其回显到您的socket.io实例。

您正在向express router处理http请求,但代码中未设置该请求。io正在发送xhr或套接字请求,不处理http请求。使用在线服务,如或raise router,它将接收您的浏览器请求,并通过socket将其回送到您的socket.io实例。

这与PHP/codegniter有何关系?您的问题正文中没有任何内容—只是您想使用它,但问题似乎在node.js上。或者我遗漏了什么?node.js中有什么问题,你能告诉我吗?这是因为scoket.io使用ws-protocol而不是http。使用此应用程序测试您的程序[Socket.io tester]()这与PHP/codegniter有何关系?您的问题正文中没有任何内容—只是您想使用它,但问题似乎在node.js上。或者我遗漏了什么?node.js中有什么问题,你能告诉我吗?这是因为scoket.io使用ws-protocol而不是http。使用此应用程序测试您的程序[Socket.io tester]()