【发布时间】:2020-11-22 11:24:59
【问题描述】:
我一直在关注 TheCodingTrain 的关于 web 套接字和 node.js 的 youtube 教程,我终于完成了它。一切都按预期进行,直到最后。我不知道他的教程现在是过时了还是什么,但由于某种原因,两个浏览器无法连接。谁能告诉我哪里出错了?
链接到第四部分(我卡住的地方)youtube.com/watch?v=i6eP1Lw4gZk
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.1.9/p5.js"></script>
<script src="https://cdn.socket.io/socket.io-3.0.1.js"></script>
<meta charset="utf-8" />
</head>
<body>
<script src = "script.js"></script>
</body>
</html>
script.js
var socket;
function setup() {
createCanvas(400, 400);
background(51);
socket = io.connect('http://localhost:4289');
socket.on('mouse', newDrawing);
}
function newDrawing() {
fill(255, 137, 0);
stroke(255, 0, 0);
strokeWeight(3);
ellipse(data.x, data.y, 10, 10);
}
function mouseDragged() {
console.log('Sending: ' + mouseX + ", " + mouseY);
var data = {
x: mouseX,
y: mouseY
}
socket.emit('mouse', data);
fill(0, 0, 255);
stroke(0, 255, 255);
strokeWeight(3);
ellipse(data.x, data.y, 10, 10);
}
server.js
var express = require('express');
var app = express();
var server = app.listen(4289);
app.use(express.static('public'));
console.log("My socket server is up and running!");
var socket = require('socket.io');
var io = socket(server);
io.sockets.on('connection', newConnection);
function newConnection(socket) {
console.log('New connection at ' + socket.id);
socket.on('mouse', mouseMsg);
function mouseMsg(data) {
socket.broadcast.emit('mouse', data);
console.log(data);
}
}
我几乎可以肯定我按照他关于如何正确设置文件的第一部分进行了操作,因为在第四部分之前一切正常。您可能还想按照他的第一部分和第二部分下载节点和套接字。谢谢!
【问题讨论】:
标签: javascript node.js sockets websocket