博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HTML5-WebSocket
阅读量:6428 次
发布时间:2019-06-23

本文共 1305 字,大约阅读时间需要 4 分钟。

1.概述

WebSocket是一种比HTTP协议更加高效的网络传输协议,它有效地减少了HTTP头中的冗余信息和网络延时,能够提供客户端-服务器和服务器-客户端的双通道实时通信,同时具有很好的安全机制。基于WebSocket的URL通常以WS://...开头,类似于HTTPS,安全的WebSocket连接URL通常以WSS://...开头。要实现WebSocket通信,需要客户端浏览器支持WebSocket,服务器端也必须支持WebSocket。
WebSocket还具有广播功能,当有多个监听者连接时,广播服务器发送的消息都可被接收到。

2.浏览器支持检测

function loadDemo()
{
if (window.WebSocket)
{
document.getElementById("support").innerHTML = "HTML5 WebSocket is supported in your browser.";
} else
{
document.getElementById("support").innerHTML = "HTML5 WebSocket is not supported in your browser.";
}
}

3.WebSocket对象

WebSocket在DOM中是window对象的子对象,它具有:
•WebSocket(url)构造函数。
•readyState。只读属性,其值可以是CONNECTING(0),OPEN(1),CLOSED(3)。
•boolean send(in DOMString data)和void close()两个方法,分别用于发送消息和关闭WebSocket连接
•onopen, onmessage, 和onclosee三个事件属性,分别对open, message和close三个WebSocket事件。

3.使用WebSocket的步骤

//建立连接
url = "ws://localhost:8080/echo";
w = new WebSocket(url);
//事件监听
w.onopen = function() {
log("open"); w.send("thank you for accepting this websocket request");
}
w.onmessage = function(e) {
log(e.data);
}
w.onclose = function(e) {
log("closed");
}

//发送消息

document.getElementById("sendButton").onclick = function() {
w.send(document.getElementById("inputMessage").value);
}

//关闭连接。一般情况下不关闭,以保持实时通信

w.close();

 

转载于:https://www.cnblogs.com/shn11160/archive/2012/12/21/2828270.html

你可能感兴趣的文章
我的友情链接
查看>>
我的友情链接
查看>>
FastDFS整合nginx后,nginx一直报错
查看>>
使用Fuel安装OpenStack juno之三使用OpenStack创建云主机和Volume
查看>>
zabbix安装源
查看>>
Eclipse+kafka集群 实例源码
查看>>
Vijos 1067Warcraft III 守望者的烦恼
查看>>
SQL语句
查看>>
LinkedList
查看>>
Python number
查看>>
【Lv1-Lesson008】A Guide to Birthdays
查看>>
MySQL_PHP学习笔记_2015.04.19_PHP连接数据库
查看>>
juery 选择器 选择多个元素
查看>>
【新手向】TensorFlow 安装教程:RK3399上运行谷歌人工智能
查看>>
Oracle Net Configuration(监听程序和网络服务配置)
查看>>
c语言_判断例子
查看>>
ubuntu重启不清除 /tmp 设置
查看>>
面向对象
查看>>
JSON
查看>>
SAP发布wbservice,如果有权限管控的话,需要给这个webservice加权限
查看>>