gpt4 book ai didi

javascript - Socket.io 不从客户端向服务器发送数据

转载 作者:行者123 更新时间:2023-11-30 05:48:45 24 4
gpt4 key购买 nike

我似乎在使用 socket.io 从客户端到服务器的通信时遇到了问题。

首先,我发送的JSON对象

loginInfo = { email: 'username', password: 'password' }

在客户端我有:

socket.emit('user:login', loginInfo);

然后在服务器端我有

socket.on('user:login', function(loginInfo) {
console.log('data being sent is:\n' + loginInfo);
});

这在控制台中打印出来:

data being sent is:
function ack() {
self.log.debug('sending data ack packet');
socket.packet({
type: 'ack'
, args: util.toArray(arguments)
, ackId: packet.id
});
}

同样,如果我这样做

socket.on('user:login', function(loginInfo) {
console.log('data being sent is:\n' + loginInfo.password);
});

控制台打印出:

data being sent is:
undefined

我过去使用过 socket.io,之前从未遇到过这个问题,所以我一定是在做一些奇怪的事情。如果有人知道此问题的原因,我将非常感谢您提供有关如何解决此问题的见解。

编辑:问题与打印出来的内容无关,我只是用它来说明我的问题,即 loginInfo JSON 要么没有被客户端正确发送,要么没有被服务器接收适本地。我的目标是让服务器接收 loginInfo,以便我可以处理数据。

谢谢!

最佳答案

尝试使数组成为对象的属性...无论出于何种原因对我有用;

messageIds = [1,2,3,4,5,6];

这没有用:

socket.emit('updateMessage',JSON.stringify(messageIds));

这确实有效:

  socket.emit('updateMessage',{1:messageIds});

奇怪的错误,不知道为什么。

关于javascript - Socket.io 不从客户端向服务器发送数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16138919/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com