Javascript Node.js最简单的代码不工作
因为我是Node.js的新手,正在从不同的文章中学习。到目前为止,我的代码是 使用app.js在服务器端 在客户端使用index.html 在上面的代码中我做错了什么?当我在控制台中运行app.js时,它显示info-socket.io已启动,但当我运行时http://localhost:3000 它只是不断请求服务器Javascript Node.js最简单的代码不工作,javascript,html,node.js,websocket,socket.io,Javascript,Html,Node.js,Websocket,Socket.io,因为我是Node.js的新手,正在从不同的文章中学习。到目前为止,我的代码是 使用app.js在服务器端 在客户端使用index.html 在上面的代码中我做错了什么?当我在控制台中运行app.js时,它显示info-socket.io已启动,但当我运行时http://localhost:3000 它只是不断请求服务器 另外,我想知道,在我的电脑上,无论在哪里,我都会为Node创建文件夹,并将app.js和index.html文件(如上所述)放入其中并运行http://localhost:300
另外,我想知道,在我的电脑上,无论在哪里,我都会为Node创建文件夹,并将app.js和index.html文件(如上所述)放入其中并运行http://localhost:3000 在运行节点控制台中的app.js后,浏览器中的将自动使该文件夹成为本地主机的“我的站点文件夹”?在您的app.js中更新此文件夹的代码
var http = require('http'),
fs = require('fs'), //<--- File Module
index = fs.readFileSync(__dirname + '/index.html');
var app = http.createServer(function(req,res)
{
res.writeHead(200, {'Content-Type': 'text/html'}); //<-Updated to text/html
res.end(index); //<---I am sending page
});
希望这能解决您的问题您不应该在服务器端执行此操作:
socket.emit('connect',{msg:'Hello Client'});
因为connect是从服务器成功连接时发出的默认事件。因此,当客户端连接时,服务器会触发其默认的“connect”事件,但在这里,您也会触发名为connect的事件,这可能会导致问题。现在浏览器打开页面并写入Hello,但不会显示警报,因为我已在index.html中编码。然后,您应该在创建服务器时更新代码并发送index.html。查找我更新的代码。谢谢@M Omary的建议。我不知道这个
var http = require('http'),
fs = require('fs'), //<--- File Module
index = fs.readFileSync(__dirname + '/index.html');
var app = http.createServer(function(req,res)
{
res.writeHead(200, {'Content-Type': 'text/html'}); //<-Updated to text/html
res.end(index); //<---I am sending page
});
socket.emit('connect',{msg:'Hello Client'});