如何解决套接字连接成功后未在反应应用程序中获取数据
我试图在通过套接字连接时从我的分子后端返回一些数据到我的反应前端。我在获取数据时遇到了挑战,让我特别困惑的是,当我在后端出现错误时,完整的错误会通过套接字返回到前端。但是当我解决错误时,我在前端得到的只是 null
。我不清楚为什么我会在错误情况下收到响应,而在没有错误时收到 null
响应。任何帮助将不胜感激。
这是我在后端的代码。这个函数在 'auth.register' 的套接字请求进来时触发:
register(ctx) {
const socketId = ctx.Meta.socket.id;
console.log('socketId: ',socketId);
const response = {
status: 'success',code: null,message: 'Device registered with version 1.0.0.',body: { socketId },broadcast: false,messageId: 'unkNown',opts: {}
}
return response;
},
io.socket.on('connect',() => {
console.log("Connection with the socket gateway established on socket");
// register
io.socket.emit('call','auth.register',{
key: config.key,version: `${config.app} ${config.version}`,app: config.app,},(res) => {
console.log('res: ',res);
});
});
这样的代码,前端控制台中的res
就等于null
。
register(ctx) {
const socketId = ctx.Meta.socket.id;
console.log('socketId: ',socketId);
response = {
status: 'success',
通过套接字返回完整的错误,因此在前端控制台中,res
是这样的:
{name: "ReferenceError",message: "response is not defined"}
我试图理解为什么,如果后端出现错误,它会在前端的套接字调用的回调中成功返回,但如果没有错误,我最终得到的是 { {1}}。
我在这里错过了什么?这种情况如何将数据返回给前端?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。