关于js的webSocket函数问题

我目前需要直接用js向本地端口发送数据,不需要接受服务器信息,也不需要长时间连接服务器,只需要把一串字符能发送到服务器。百度的websocket代码中var socket = new WebSocket("ws://127.0.0.1:60000");直接可以建立连接但是 socket.send函数不执行。首先我想问下js的websocket能不能直接向服务器发送字符串?

图片说明

2个回答

当然可以发送字符串,但你首先要确定你的连接是否成功。然后再去发送数据。然后不是所有浏览器都支持WebSocket的。
chrome和firefox是支持的,ie要ie10才支持。
try {
var websocket;
if (typeof MozWebSocket == 'function')
WebSocket = MozWebSocket;
if (websocket && websocket.readyState == 1)
websocket.close();
websocket = new WebSocket(Uri);
websocket.onopen = function (evt) {
alert("连接成功");
websocket.send("data");
};
websocket.onclose = function (evt) {
alert("服务已断开");
};
websocket.onerror = function (evt) {
alert('ERROR: ' + evt.data);
};
} catch (exception) {
alert('ERROR: ' + exception);
}

兄弟 websocket接收的就是字符串,你的操作没有任何问题,你可以加一下socket.open看一下是不是已经第一次握手了

Socket.readyState

只读属性 readyState 表示连接状态,可以是以下值:

0 - 表示连接尚未建立。

1 - 表示连接已建立,可以进行通信。

2 - 表示连接正在进行关闭。

3 - 表示连接已经关闭或者连接不能打开。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!