我正在尝试使用 Socket.io 实现一个聊天应用程序
进入我的 Laravel 应用程序。聊天应用程序本身运行良好,
但我在 Laravel 中遇到问题。
我尝试在端口 8000 上提供 Laravel 服务,并在 8000 上提供聊天服务器。
我使用 Express 4.8.0 和 Socket.io 1.0.6、Node 0.10.29 和 nodemon 进行测试。
//服务器.js:
var express = require('express');
var app = express();
var http = require("http").Server(app);
var io = require("socket.io")(http);
http.listen(8000, function () {
console.log('listening on *:8000');
});
app.use('/', express.static(__dirname + '/public'));
app.get("/*", function (req, res){
res.sendFile(__dirname + "/index.php");
});
//客户端.js:
var socket = io.connect('http://localhost:8000');
//html - 依赖项,我尝试了所有这些:
<script src="//cdn.socket.io/socket.io-1.0.0.js"></script>
{{ HTML::script('/socket.io/socket.io.js') }}
<script src="http://localhost:8000/socket.io/socket.io.js" ></script>
<script src="{{asset('/socket.io/socket.io.js')}}"></script>
然后是客户端(自己的代码)
{{ HTML::script('js/client.js') }}
Socket.io 的 CDN 版本不断提供以下类型的日志:
"GET http://localhost:8000/socket.io/?EIO=2&transport=polling&t=1407425555977-15 404 (Not Found)".
其他的只是给出一个 js 文件未找到日志:
"GET http://localhost:8000/socket.io/socket.io.js 404 (Not Found)"
//文件夹结构:
/public
/js
客户端.js
/节点模块
服务器.js
谁能看到我能做些什么来让它发挥作用?
EDIT//服务器.js
var socket = require('socket.io');
var express = require('express');
var http = require('http');
var app = express();
var server = http.createServer(app);
var io = socket.listen(server);
io.on('connection', function (socket) {
console.log("Connected server");
}
server.listen(8000);
//客户端.js
var socket;
$(document).ready(function () {
socket = io.connect('http://localhost:8000');
});
//当我在日志中输入全局“套接字”对象时,它会显示:
connected: false
disconnected: true