首页 > 解决方案 > 向和从 js 服务器发送数据的基本方法?

问题描述

我需要在 html 客户端页面和 JS 服务器之间来回发送少量数据(仅 1 个变量)。解决这个问题的最佳方法是什么?(基本上,我可以添加到客户端以从服务器发送和接收数据的脚本是什么?客户端只是 HTML 和 CSS。)

具体来说,我希望能够做的是:

向服务器发送一个变量,

让服务器用那个变量做一些事情,

并返回一个不同的变量。

(服务器对变量所做的事情与问题无关。)

服务器代码:

var app = require('express')();
var listen = app.listen(process.env.PORT);
var io = require('socket.io')(listen);
app.get('/', function(req, res){
  res.sendFile(__dirname + '/index.html');
});

app.get('/chat.html', function(req, res){
  res.sendFile(__dirname + '/chat.html');
});

io.on('connection', function(socket) {
  console.info(`Client connected [id=${socket.id}]`);
  socket.on('disconnect', function(){
  console.info(`Client gone [id=${socket.id}]`);
  });
});


io.on('connection', function(socket){
  socket.on('private message', ({ sender, recipient, message }) => {
     io.to([recipient]).emit("dm", {description: message, sender: sender });
  socket.on('passwordTest', function(test){
    console.log(test);
    io.emit('passwordCorrect')
  });

})
  socket.on('chat message', function(msg){
    console.log('New Message');
  });
});
io.on('connection', function(socket){
  socket.on('chat message', function(msg, xname){
    io.emit('chat message', msg, {senderid: xname });
    console.log('sender: ' + xname + ', message: ' + msg);
  });
});

您可以提供的任何示例代码都会很棒!

<3

标签: javascripthtmlnode.jsclient-server

解决方案


我希望您想将聊天室名称和发件人姓名与消息一起发送。为此,您必须在客户端使用 javascript。用户连接后使用数组存储数据,用户断开连接后从数组中删除详细信息。这是必需的,因为多个用户可能同时使用您的聊天应用程序。

如果您想进一步澄清,请让我知道具体细节,因为我正在从事类似的项目


推荐阅读