SSE事件作用,错误分析
Server-Sent(SSE):
server sent用于自动接收服务器更新,当服务器发生数据更新时,此事件将自动执行来更新页面数据,常用于博文、股价等不断变化的项目中。下面将简单介绍SSE中三个常用事件:
onopen,当通往服务器的链接被打开时执行处理函数;
onerror,当服务端发生错误时,执行处理函数;
onmessage,当服务端发生变化时执行处理函数;
首先创建一个实例对象如:new EventSource(‘test.php’),实例对象括号中用于传入一个服务端文件,用于此对象中onmessage事件对象处理,事件对象中data属性就是接收到服务端变化后的数据,事件对象如下:
服务端数据每更新一次,就会自动执行onmessage事件,具体如下:
javascript脚本:
<script>// 1.创建EventSource对象:var source = new EventSource('test.php'); //将服务端的脚本地址传入到对象中// 2.使用source对象的onmessage事件监听服务端数据变化,并通过事件对象将变化后的数据打印在控制台:source.onmessage = function(event) {console.log(event.data); //将服务端变化的数据打印到控制台}</script>
服务端文件可以是Java、none.js、php等脚本,这采用php文本介绍SSE,php在本文不做详细介绍,后面会有相关文档详细介绍:
<!-- 创建一个php文档,将文件放到与test.html文件同目录--><?phpheader('Content-Type: text/event-stream');//设置header,后面php会详细介绍$time = date('r');//定义变量接收当前时间echo "data:{$time}\n\n";//将变化的时间输出
注意:此案例应该和web Worker一样部署在服务器上才能正常运行,否则会报类似错误:Access to resource at ‘file:///C:/Users/17121/Desktop/test/test.php’ from origin ‘null’ has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, chrome-untrusted, https.;实际开发中应当判断浏览器是否支持EventSource对象,当不支持时应当做出错误提示。
提示:本文图片等素材来源于网络,若有侵权,请发邮件至邮箱:810665436@qq.com联系笔者 删除。
笔者:苦海
SSE事件作用,错误分析相关推荐
- 简述mysql事件作用_MYSQL使用简述
1.如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了.也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就OK. 2.你可以使用光标上下键调出以前的命令 ...
- jax-rs jax-ws_迟来总比没有好:SSE或服务器发送的事件现在已在JAX-RS中
jax-rs jax-ws 服务器发送的事件 (或简称为SSE )是非常有用的协议,它允许服务器通过HTTP将数据推送到客户端. 这是我们的Web浏览器支持的年龄,但是令人惊讶的是, JAX-RS规范 ...
- 迟来总比没有好:SSE或服务器发送的事件现在已在JAX-RS中
服务器发送的事件 (或简称为SSE )是非常有用的协议,它允许服务器通过HTTP将数据推送到客户端. 这是我们的网络浏览器支持的年龄,但令人惊讶的是, JAX-RS规范在很长一段时间内都忽略了这一点. ...
- Vert.x实战 事件总线:Vert.x应用程序的主干
本章包括: 什么是事件总线 如何在事件总线上拥有点对点通信[point-to-point].请求-应答通信[request-reply].发布/订阅通信[publish/subscribe] 用于在网 ...
- android 模拟点击localinstrumentation,Android Instrumentation模拟鼠标点击事件
看了几遍网上的博客一直没有 模拟出鼠标点击事件和按钮事件,后来抱着试试态度再重试的时候终于有所斩获.下面把具体的情况记录一下: 首先我们必须了解类 Instrumentation: Instrumen ...
- Canvas事件绑定
canvas事件绑定 众所周知canvas是位图,在位图里我们可以在里面画各种东西,可以是图片,可以是线条等等.那我们想给canvas里的某一张图片添加一个点击事件该怎么做到.而js只能监听到canv ...
- 【js】event(事件对象)详解
1.事件对象 Event 对象代表事件的状态,比如事件在其中发生的元素.键盘按键的状态.鼠标的位置.鼠标按钮的状态. 什么时候会产生Event 对象呢? 例如: 当用户单击某个元素的时候,我们给这个元 ...
- js中的DOM事件之冒泡和捕获事件详解
DOM中的事件是一个很中要的东西,它可以让用户和浏览器之间进行交互,以此来实现人机交互效果 DOM事件 DOM事件分为DOM0级事件和DOM2级事件.DOM0级其实不存在,我们把DOM最初的版本叫0级 ...
- 【SCIR Lab】事件表示学习简述
作者:哈工大SCIR 廖阔 1. 简介 事件通常指包含参与者在内的某种动作或情况的发生,或世界状态的改变.在粒度上,事件介于词与句子之间:与词相比,事件通常包含多个词,用来描述事件的发生及事件的组成要 ...
最新文章
- 和12岁小同志搞创客开发:手撕代码,做一款亮度可调节灯
- 得到windows聚焦图片(windows 10)
- 生物信息学 生物科学、农学、林学、医学
- 5see我看视频交友客户端 v2.3.0.11官方版
- 软件测试-HTTP Analyzer过期了怎么办?
- Struts2的自动装配
- SAP CRM interactive report的各种输入字段
- 轻松理解—继承成员访问控制机制
- python list保存至csv文件
- BMC之ipmitool 命令收集
- 探测内网c段、外网某网站(ip)的网络服务存活状态
- 计算机五个盘,电脑分盘分几个盘合适,您知道吗?
- FlinkSQL建表语句与插入语句
- 7-8 哈利·波特的考试 (25分) 【最短路径】
- linux 拼音输出繁体_ubuntu输入法是繁体 寻找Ubuntu中繁体字输入法 - Linux - 服务器之家...
- 【转录调控网络】基因转录调控网络——转录因子调控网络分析
- 互联网早报:微信内测深度清理功能内存,可一键清理缓存
- Arun Gupta通过将HTML5与Java EE 7拥抱来提高生产力
- 年轻设计师如何做好商业设计
- .NET破解之太乐地图下载器【非暴破】
热门文章
- 如何用python的i2c教程_Micropython TPYBoard I2C的用法
- 查看目录是否为内存盘_Linux buff/cache内存释放
- arm linux sms,基于arm处理器的手机短消息加密系统 encryption system for sms based on arm.pdf...
- 使用MATLAB GUI创建图形用户界面GUI
- pcl里面的3D特征
- ecshop活动页_ECSHOP团购活动,ECSHOP团购列表
- 电路结构原理_精密半波、全波整流电路结构原理图解
- java 搜索引擎 关键词高亮_和我一起打造个简单搜索之SpringDataElasticSearch关键词高亮(示例代码)...
- Python习题week1
- opencv12-图像金字塔