首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Socket.io对连接事件的调用

问Socket.io对连接事件的调用
EN

Stack Overflow用户
提问于 2017-08-04 21:44:48
回答 2查看 1.8K关注 0票数 0

有没有办法在Node.js中的connect事件上也使用ack参数?就像这样:

代码语言:javascript
复制
//client.js
socket.on('connect', (data) => {
  console.log(data); // I want to print 'lol' here
});

//server.js
io.on('connect', (socket, ack) => {
  ack('lol'); // TypeError: ack is not a function
});

ack参考资料:https://socket.io/docs/server-api/#socket-emit-eventname-args-ack

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-04 21:58:35

看起来,socket.connect()或socket.open()方法不带ack参数。通常,一旦建立了来自客户端的连接,我就会从服务器发出一个“connected”事件。您可以接收此排放,并根据需要添加您的行为。

server.js

代码语言:javascript
复制
io.on('connect', function(socket) {
  socket.emit('connected');
});

client.js

代码语言:javascript
复制
socket.on('connected', function() {
  console.log('Connected');
});
票数 2
EN

Stack Overflow用户

发布于 2017-08-04 21:51:22

没有特定的ack数据可用于发送连接事件。当服务器接收到连接时,您可以只向客户端发送一条消息。

代码语言:javascript
复制
//client.js
socket.on('connect', () => {
  console.log('client connected');
});

socket.on('welcome', function(data) {
  console.log(data); // 'lol'
});

//server.js
io.on('connect', (socket) => {
  // send welcome message upon connect
  socket.emit('welcome', 'lol');
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45515918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档