首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >HTML5 Websocket在发送消息之前等待连接和就绪状态更改

HTML5 Websocket在发送消息之前等待连接和就绪状态更改
EN

Stack Overflow用户
提问于 2017-05-19 16:00:47
回答 1查看 2.2K关注 0票数 2

我在我的React应用程序中使用Websockets,我必须连接到一个web套接字,然后一旦连接就发送一条消息。但是我的代码不能同步工作

就是这里

代码语言:javascript
复制
ws = new WebSocket(uri);
ws.send('my msg');

有没有办法等待连接建立和就绪状态改变!谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-08-14 02:40:23

我正在执行以下操作,以准备我的WebSocket在许多其他地方使用,而不仅仅是在WebSocket readyState更改后立即使用:

代码语言:javascript
复制
// https://stackoverflow.com/questions/951021/what-is-the-javascript-version-of-sleep
const sleep = (ms) => {
  return new Promise(resolve => setTimeout(resolve, ms));
};

// (inside of async function)...

  const ws = new WebSocket(<webSocketServerUri>);

  let timeToConnect = 0;
  while (ws.readyState !== ws.OPEN) {
    await sleep(1);
    ++timeToConnect;
  };

  console.log('The WebSocket took ' + timeToConnect + ' milliseconds to connect.');

// (inside of async function)...
// ...
// (some other place in the code where 'ws' is accessible)...

  ws.send('my msg');

// (some other place in the code where 'ws' is accessible)...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44064603

复制
相关文章

相似问题

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