Web页面自刷新

article/2025/10/8 15:20:07

简单介绍两种:

第一种Ajax

Ajax = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML),ajax就是基于浏览器提供的XMLHttpRequest对象来实现的

什么叫异步?

异步,不同的意思,这里也就是指不跟浏览器加载执行网页代码的步伐一致,也就是说在一个网页中需要用户操作来触发执行代码,而不是整个网页代码一次性执行完毕。

它最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。并且不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。
总的来说,就是:

ajax 是数据请求方式的一种,

  1. 前端可以发送数据到后端
  2. 可以接受从后端传过来的数据
  3. 可以解析从后端传过来的数据
  4. 可以对页面进行局部刷新操作
    在这里插入图片描述

async

类型:Boolean

默认值: true。默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。

注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。

第二种Websocket

首先,Websocket是一个持久化的协议,相对于HTTP这种非持久的协议来说。

  1. HTTP的生命周期通过Request来界定,也就是一个Request 一个Response,那么在HTTP1.0中,这次HTTP请求就结束了。
    在HTTP1.1中进行了改进,使得有一个keep-alive,也就是说,在一个HTTP连接中,可以发送多个Request,接收多个Response。
    但是Request = Response , 在HTTP中永远是这样,也就是说一个request只能有一个response。而且这个response也是被动的,不能主动发起。

只需要经过一次HTTP请求,就可以做到源源不断的信息传送了。(在程序设计中,这种设计叫做回调,即:你有信息了再来通知我,而不是我傻乎乎的每次跑来问你)

Websocket只需要一次HTTP握手,所以说整个通讯过程是建立在一次连接/状态中,也就避免了HTTP的非状态性,服务端会一直知道你的信息,直到你关闭请求。

在这里插入图片描述
总体来说:

ajax轮询 ,ajax轮询 的原理非常简单,让浏览器隔个几秒就发送一次请求,询问服务器是否有新信息。基于此都是在不断地建立HTTP连接,然后等待服务端处理,可以体现HTTP协议的另外一个特点,被动性。

ajax轮询 需要服务器有很快的处理速度和资源。(速度)

HTTP还是一个无状态协议,通俗的说就是,服务器因为每天要接待太多客户了,没有记性,你挂电话,他就把你的东西全忘光了,把你的东西全丢掉了。你第二次还得再告诉服务器一遍。

当服务器完成协议升级后(HTTP→Websocket),服务端就可以主动推送信息给客户端,主动性。

所以,目前需要大量实时更新的场景,推荐使用Websocket,资源开销小,且具有主动性。

在这里插入图片描述


http://chatgpt.dhexx.cn/article/43b7k7W2.shtml

相关文章

页面刷新技术-------AJAX

一、前提步骤(先把静态网页写出来) 1、首先先要配置文件 2、然后去后端建立服务器,把该下载的模块下载好 var httprequire("http") var fsrequire("fs") var urlrequire("url") var querystringrequire(&quo…

页面刷新和vue页面刷新

history.go(0) location.reload() locationlocation location.assign(location) document.execCommand(Refresh) window.navigate(location) location.replace(location) document.URLlocation.href这几个都可以刷新: window.location.reload();刷新 window.locatio…

vue关于页面刷新的几个方式

在写项目的时候会遇到需要刷新页面重新获取数据,浅浅总结了一下几种方案。 1.this.$router.go(0) 强制刷新页面,会出现一瞬间的白屏,用户体验感不好。 2.location.reload() 也是强制刷新页面,和第一种方法一样,会造成…

HTML页面刷新及其应用例子

HTML页面刷新及其应用例子 刷新一般指重新载入当前页面。本文先给出html页面刷新重载方法汇总&#xff0c;再给出示例。 html页面刷新重载方法汇总 一、javascript页面刷新重载的方法&#xff1a; <a href"javascript:location.reload();">点击重新载入页面…

vue页面刷新

vue页面刷新 首先我们都知道vue属于单页面应用&#xff0c;默认境况下是不会触发刷新页面操作的&#xff0c;所以这个时候就需要我们通过事件来触发reload()来达到刷新操作 接下来我就为大家介绍三种刷新页面的方法 1. wiindow.location.reload([bForceGet])该方法强迫浏览…

hadoop 学习路线

Posted: Sep 6, 2013 Tags: Hadoophadoop familyroadmap Comments: 40 Comments Hadoop家族学习路线图 Hadoop家族系列文章&#xff0c;主要介绍Hadoop家族产品&#xff0c;常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa&am…

Hadoop 学习路线图

主要介绍Hadoop家族产品&#xff0c;常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa&#xff0c;新增加的项目包括&#xff0c;YARN, Hcatalog, Oozie, Cassandra, Hama, Whirr, Flume, Bigtop, Crunch, Hue等。 从2011年开始&…

Hadoop学习路线

Hadoop基础 Hadoop是一个能够对大量数据进行分布式处理的软件框架&#xff0c;它是一种技术的实现&#xff0c;是云计算技术中重要的组成部分&#xff0c;云计算的概念更广泛且偏向业务而不是必须拘泥于某项具体技术&#xff0c;云计算的存在只是一种新的商业计算模型和服务模…

第11期:Hadoop零基础学习路线

大家好&#xff0c;我是你们的老朋友老王随聊&#xff0c;今天和大家讨论的话题——Hadoop零基础应该怎么学&#xff1f; 通过这段时间和群里同学们交流&#xff0c;发现很多大学生甚至职场小白对Hadoop学习路线不是很清晰&#xff0c;所以我花了一些时间给大家整理了一张Hadoo…

hadoop学习路线图

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下&#xff0c;开发分布式程序。充分利用集群的威力进行高速运算和存储。而对于hadoop的学习是大数据学习中的重要一个环节&#xff0c;于是乎有很多人想要知道hadoop学习路线图。…

Python的基础编程

1. python的基本语法 Python是一个结合了解释性、编译性、互动性和面向对象的高级程序设计语言&#xff0c;结构简单&#xff0c;语法定义清晰&#xff1b; Python最具特色的就是使用缩进来表示代码块&#xff0c;不需要使用大括号{}&#xff0c;但每一个模块内的语句必须包含…

【Java编程指南】语法基础

目录 一、前言 二、关键字 三、数据类型 1.存储单元 2.存储范围 3.类型转换 四、常量 五、变量 六、标识符 七、注释 一、前言 学习目标 1&#xff1a;熟悉Java的关键字、数据类型&#xff08;包括范围&#xff09;、常量与变量的区别 学习目标 2&#xff1a;类型转…

新手小白零基础,该怎样学习编程呢?

零基础编程入门先学什么&#xff1f;编程语言有几百种&#xff0c;我们应该怎么选择。想学习编程&#xff0c;加入互联网行业&#xff0c;哪一个更有前途&#xff1f;在小白学习编程会有各种各样的问题&#xff0c;今天小编我就来为你解答。 一、怎么选择编程语言 编程语言有很…

如何打好编程基础

如何打好编程基础 这篇文章是写给那些真心想学编程的人看的——那些憋着一股狠劲儿,一定要做出个什么真东西,不学好不罢休的人;而不是那些「听说编程好玩」的人,在我看来,这种人永远都入不了编程的门,更别提做出个像样的东西来了。 心态调整 确定目标 在你学习编程之前思…

Web编程基础知识

前段时间零零碎碎看了Web编程相关内容&#xff0c;今天就整理了一下 Web编程&#xff0c;前端主要是htmlCSSJavaScript&#xff0c;后端使用最多的是PHPMySQL 此次教程主要是关于html、CSS、JavaScript和PHP的一些语法和使用细则 1 Html: HyperText Markup Language&#xff0c…

如何0基础学编程,岗位怎么选择?

下面进入正题&#xff0c;如果非计算机专业的话短期内想找到工作可以考虑去选择找IT培训机构学习。一方面有专业老师指导&#xff0c;比自己看书、看视频学习更有效率。如果自学主要你非计算机专业&#xff0c;计算机基础编程基础相当于没有&#xff0c;有些编程理论很难理解&a…

5.Java编程基础

&#x1f4cb; 个人简介 &#x1f496; 作者简介&#xff1a;大家好&#xff0c;我是W_chuanqi&#xff0c;一个编程爱好者 &#x1f4d9; 个人主页&#xff1a;W_chaunqi &#x1f600; 支持我&#xff1a;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; &#x1f4ac; 愿你我共…

新手小白入门编程第1讲 计算机基础知识 JAVA基础知识

1 计算机基础知识 1.1计算机 计算机&#xff08;Computer&#xff09;全称&#xff1a;电子计算机&#xff0c;俗称电脑。是一种能够按照程序运行&#xff0c;自动、高速处理数据的现代化智能电子设备。常见的形式有台式计算机、笔记本计算机。按照规模分为微型机、小型机、大…

linux软件包安装与卸载

7.1 安装软件包的三种方法 在Linux下安装软件包&#xff0c;主要有3种办法 &#xff08;1&#xff09;rpm工具&#xff08;手动安装&#xff0c;难点在于包的依赖关系&#xff09; &#xff08;2&#xff09;yum工具&#xff08;python开发出来的工具&#xff0c;操作对象rp…

linux下如何卸载系统软件,教你在Linux下如何卸载软件

软件的卸载 1.软件的卸载主要是使用rpm来进行的。卸载软件首先要知道软件包在系统中注册的名称。键入命令&#xff1a; #rpm -q -a 即可查询到当前系统中安装的所有的软件包。 2.确定了要卸载的软件的名称&#xff0c;就可以开始实际卸载该软件了。键入如下命令即可卸载软件&am…