首页 > 其他分享 >Ajax及其应用

Ajax及其应用

时间:2024-03-12 22:46:08浏览次数:13  
标签:触发 XMLHttpRequest 请求 及其 AJAX xhr Ajax 应用 HTTP

AJAX概述

1、AJAX的定义:异步的JS和XML,使用XMLHttpRequest对象与服务器通信;可以在不重新刷新页面的情况下与服务器通信,交换数据或更新页面。

2、概念:AJAX是浏览器与服务器进行数据通信的技术。

3、工作原理:客户端发送请求交给xhr,xhr把请求提交给服务器进行处理,服务器响应数据交给xhr对象,xhr对象接收数据,最后由javascript把数据写到页面上

4、AJAX请求步骤:①创建XMLHttpRequest实例②发送HTTP请求③接收服务器传回的数据④更新网页数据

(AJAX只能向同源网址协议域名端口相同)发出HTTP请求,否则会报错)

XMLHttpRequest对象

1、XMLHttpRequest对象是AJAX的主要接口;XMLHttpRequest本身是一个构造函数,没有任何参数

2、readyState: 返回请求的状态。可能的值有:

  • 0: 对象已创建,但尚未调用 open() 方法。

  • 1: open() 方法已被调用。

  • 2: send() 方法已被调用,请求已发出。

  • 3: 服务器正在发送响应数据。

  • 4: 服务器响应已完全接收。

  • var xhr = new XMLHttpRequest();
    
    if (xhr.readyState === 4) {
      // 请求结束,处理服务器返回的数据(表示发出的HTTP请求已经成功)
    } else {
      // 显示提示“加载中……”
    }
    

3、responseText: 将响应的文本内容作为字符串返回。

4、responseXML: 如果响应的内容类型是 "text/xml" 或 "application/xml",则将响应作为 XMLDocument 对象返回。

5、status: 返回 HTTP 状态码,只有2xx和304的状态码表示成功。

6、statusText: 返回 HTTP 状态文本,例如 "OK" 或 "Not Found"。

7、responseURL: 属性是字符串,表示发送数据的服务器的网址

var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://example.com/test', true);
xhr.onload = function () {
  // 返回 http://example.com/test
  console.log(xhr.responseURL);
};
xhr.send(null);

方法

  1. open(method, url, async, user, password): 初始化请求参数。
    • method: 请求方法(GET, POST, PUT, DELETE 等)。
    • url: 请求的 URL。
    • async: 是否异步发送请求,默认为 true
    • user: 可选的用户名用于身份验证。
    • password: 可选的密码用于身份验证。
  2. send(data): 发送请求。如果请求是 POST 类型,那么 data 将作为请求主体发送。
  3. setRequestHeader(header, value): 设置请求的 HTTP 头部信息。
  4. abort(): 取消当前请求。
  5. getAllResponseHeaders(): 返回所有响应头信息。
  6. getResponseHeader(header): 返回特定响应头的信息。

事件

1、onreadystatechange

  • 当 readyState 改变时会触发此事件。

2、onloadstart

  • 当请求开始加载时触发。

3、onprogress

  • 当请求接收到数据时触发。

4、onabort

  • 当请求被取消时触发。

5、onerror

  • 当请求遇到错误时触发。

6、onload

  • 当请求成功完成时触发。

7、ontimeout

  • 当请求超时时触发。

8、onloadend

  • 当请求结束时触发(无论请求成功还是失败)。

标签:触发,XMLHttpRequest,请求,及其,AJAX,xhr,Ajax,应用,HTTP
From: https://www.cnblogs.com/ftcs/p/18069524

相关文章

  • Nginx应用场景及配置
    目录一、Web服务器1.HTTP2.HTTPS二、反向代理三、负载均衡四、重定向1.老域名跳转新域名2.路径重定向五、防盗链六、手机端重定向PC端七、基于请求路径转发不同服务一、Web服务器1.HTTPserver{listen80;server_name_;location/{root/data;......
  • 系统及其分类
    系统定义系统:指若干相互关联的事物组合而成的具有特定功能的整体。 系统的基本作用:对输入信号进行加工和处理,将其转换为所需要的输出信号。系统分类系统的分类错综复杂,主要考虑其数学模型的差异来划分不同类型。主要分为:线性与非线性、即时与动态(记忆)、时变与时不变......
  • CH592 CH582 CH573 Central 例子应用说明三 (发现服务与特征值)
    本文以BLECentral工程为例,解析CH592作为主机时是如何发现从机的服务和特征值。一个Gatt包含多个服务(Service);一个服务包含多个特征(Characteristic);一个特征包含多个描述符;Service、Characteristic、Descriptor,这三部分都由UUID作为唯一标示符。Service中的Characteristic是......
  • 充气泵方案芯片SIC8833的应用
    随着科技的不断发展,电动汽车的迅速崛起,车载轮胎充气泵已经成为我们日常生活中不可或缺的测量和打气工具。为了满足用户对于充气泵多样化的功能需求,在选配时,芯片SIC8833脱颖而出,为充气泵方案带来了革命性的变革。一、充气泵芯片SIC8833介绍SIC8833是一个带24bitADC的......
  • 使用ts封装一个ajax
    练习使用ts的接口interface/***使用TS封装一个ajax*/interfaceConfig{type:string;url:string;data?:any;//可选dataType:string;}functionajax(config:Config){letxhr=newXMLHttpRequest();xhr.open(config.t......
  • LLM 推理和应用 开源框架梳理
    之前对LLM推理和应用了解不多,因此抽时间梳理了一下,我们从模型量化,模型推理,以及开发平台等三个层面来梳理分析。模型量化模型训练时为了进度,采用的32位浮点数,因此占用的空间较大,一些大的模型需要很大的显存才能加载,且计算推理过程较慢。为了减少内存占用,提升推理速度,可以将高精......
  • 常用的Docker命令及其用途简述
    记录常用的Docker命令及其用途在日常的开发和运维工作中,Docker和docker-compose已经成为了不可或缺的工具。它们帮助我们轻松地构建、运行和管理容器化的应用程序。在这篇随笔中,我将记录下一些我常用的Docker和docker-compose命令,并简述它们的用途,并在每一个命令后面加上一条示例......
  • NET应用UI框架DevExpress XAF v23.2新版亮点 - 支持.NET 8
    DevExpressXAF是一款强大的现代应用程序框架,允许同时开发ASP.NET和WinForms。DevExpressXAF采用模块化设计,开发人员可以选择内建模块,也可以自行创建,从而以更快的速度和比开发人员当前更强有力的方式创建应用程序。在DevExpressXAF v23.2新版中全新发布了支持.NET8、DevExpre......
  • 使用 .NET Core 构建实时数据处理应用程序
    第一部分:了解实时数据处理实时数据处理是指立即处理数据输入的过程,这对于需要快速响应的应用程序至关重要。在.NETCore环境中,我们可以利用其高性能、跨平台的特性来构建高效的实时数据处理应用程序。理论事件驱动架构:这是一种软件架构模式,通过事件来触发和通信,从而实现高度......
  • tsv文件在大数据技术栈里的应用场景
    是的,\t是指制表符(tab),它通常用作字段分隔符在TSV(Tab-SeparatedValues)格式的文件中。TSV是一种简单的文本格式,它使用制表符来分隔每一列中的值,而每一行则代表一个数据记录。TSV文件例:ID\tName\tAge\tCity1\tJohnDoe\t28\tNewYork2\tJaneSmith\t32\tLosAngeles上面的例......