[英]Node.js + ExpressJS + Socket.IO TypeError: obj.on is not a function
I have unfortunately hit a roadblock in my work. 不幸的是,我的工作遇到了障碍。 I have a node.js+ExpressJS back end hooked up to a front end via Socket.io and have created the server and client as follows: 我有一个通过Socket.io连接到前端的node.js + ExpressJS后端,并按如下所示创建了服务器和客户端:
app.js: app.js:
var express = require('express');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);
// Routes and io.on statement with listeners on 'connection'
server.listen(2000);
io.listen(2000);
Index.html: Index.html:
<!doctype html>
<!--- html stuff --->
<script src='/socket.io/socket.io.js'></script>
<script src='/js/jquery.min.js></script>
<script>
$(document).ready(function() {
var socket = new io.Socket('localhost', {port: 2000});
socket.connect();
// other js that doesn't get picked up
});
</script>
What happens when I crack open my console in browser is: 当我在浏览器中打开控制台时会发生以下情况:
io.connect();
TypeError: obj.on is not a function
Did I miss something, or is a stroke of misfortune fall into my code? 我错过了什么吗,还是不幸的事落入了我的代码?
Please try changing in your index.html: 请尝试更改您的index.html:
var socket = new io.Socket('localhost', {port: 2000});
socket.connect();
to: 至:
var socket = io.connect();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.