JavaScript--AJAX

这篇具有很好参考价值的文章主要介绍了JavaScript--AJAX。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

概述

XMLHttpRequest对象

 方法和属性

示例一:

示例二:


概述

传统的web交互是用户触发一个http请求服务器,然后服务器收到之后,在做出响应到用户,并且返回一个新的页面,每当服务器处理客户端提交的请求时,客户都只能空闲等待,并且哪怕只是一次很小的交互、只需从服务器端得到很简单的一个数据,都要返回一个完整的HTML页,而用户每次都要浪费时间和带宽去重新读取整个页面。这个做法浪费了许多带宽,由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间,这导致了用户界面的响应比本地应用慢得多。

AJAX 的出现,刚好解决了传统方法的缺陷,AJAX 是一种用于创建快速动态网页的技术,通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新,这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

XMLHttpRequest对象

AJAX的核心是XMLHttpRequest对象,所有现代浏览器都支持该对象。XMLHttpRequest对象用于在后台与服务器进行数据交换,可以实现网页的部分更新,而无需重新加载整个页面。

所有现代浏览器(Chrom、IE7+、Firefox、Safari 以及 Opera)都有内建的 XMLHttpRequest 对象。

创建 XMLHttpRequest 的语法是:

let xhr = new XMLHttpRequest();

创建完成后,我们可以通过该对象执行各种操作,如发送HTTP请求、接收服务器响应等。 

 方法和属性

以下是一些常用的XMLHttpRequest方法和属性:

  1. 方法:
  • open(method, url, async): 初始化一个HTTP请求。参数method指定请求的方法,如"GET"、"POST"等;url指定请求的URL地址;async指定请求是否为异步,默认为true。
  • new XMLHttpRequest():创建新的 XMLHttpRequest 对象。
  • abort():取消当前请求
  • send(data): 发送请求并从服务器获取数据,可选地传递数据作为参数。通常在POST请求中使用。
  • send():将请求发送到服务器,用于 GET 请求
  • setRequestHeader(header, value): 设置请求头。用于设置HTTP请求的请求头,通常在发送之前调用该方法。
  • getResponseHeader(header): 获取服务器响应的指定头部信息。
  • getAllResponseHeaders(): 获取服务器响应的所有头部信息。

     2.属性:

  • onreadystatechange: 事件处理程序,在请求状态改变时被调用。可以通过该事件处理程序来检测请求的不同阶段和状态。
  • status: 包含HTTP状态码,表示服务器响应的状态。状态号:200: "OK",403: "Forbidden",404: "Not Found"。                                                                      
  • statusText:返回状态文本(比如 “OK” 或 “Not Found”)
  • responseText: 以字符串形式返回服务器响应的文本内容。
  • responseXML: 如果响应的内容类型是"text/xml"或"application/xml",则返回解析后的XML文档。
  • readyState: 表示XMLHttpRequest对象的状态,包括以下数值:
    • 0: 未初始化。表示XMLHttpRequest对象已创建或已被abort()方法重置。
    • 1: 打开。表示调用了open()方法,但尚未调用send()方法。
    • 2: 已发送。表示已调用send()方法,但未收到响应。
    • 3: 接收中。表示正在接收响应数据。
    • 4: 完成。表示已经接收到完整的响应数据,并可以在客户端使用。

这些方法和属性可以被用来配置请求、发送请求、获取响应数据以及处理响应信息。

示例一:

<!DOCTYPE html>
<html>
<head>
  <title>AJAX XMLHttpRequest 示例</title>
</head>
<body>

<h1>AJAX XMLHttpRequest 示例</h1>

<button onclick="l()">加载数据</button>

<div id="li"></div>

<script>
// 创建XMLHttpRequest对象
var xhr = new XMLHttpRequest();

// 定义onreadystatechange事件处理函数
xhr.onreadystatechange = function() {
  // 当readyState为4(完成)且status为200(成功响应)时,表示请求已完成,并处理响应数据
  if (xhr.readyState === 4 && xhr.status === 200) {
    // 获取响应的文本内容
    var responseText = xhr.responseText;
    
    // 在页面上显示响应的数据
    var resultDiv = document.getElementById("li");
    resultDiv.textContent = responseText;
  }
};

// 加载数据的函数
function l() {
  // 打开新的请求,使用GET方法获取数据
  xhr.open("GET", "data.txt", true);
  
  // 发送请求
  xhr.send();
}
</script>

</body>
</html>
  • 通过点击按钮触发l()函数来加载数据。
  • 使用XMLHttpRequest对象发送GET请求并获取数据。
  • 响应的文本内容将显示在<div id="li">元素中。

示例二:

<!DOCTYPE html>
<html>
<head>
  <title>AJAX Fetch 示例</title>
</head>
<body>

<h1>AJAX Fetch 示例</h1>

<button onclick="l()">加载数据</button>

<div id="li"></div>

<script>
// 加载数据的函数
function l() {
  // 使用Fetch API发送GET请求获取数据
  fetch("data.txt")
    .then(function(response) {
      // 确保响应成功
      if (response.ok) {
        // 将响应转换为文本格式
        return response.text();
      } else {
        throw new Error("网络请求失败:" + response.status);
      }
    })
    .then(function(data) {
      // 在页面上显示响应的数据
      var resultDiv = document.getElementById("li");
      resultDiv.textContent = data;
    })
    .catch(function(error) {
      console.log("发生错误:", error);
    });
}
</script>

</body>
</html>

注释说明:文章来源地址https://www.toymoban.com/news/detail-633453.html

  • 通过点击按钮触发 l()函数来加载数据。
  • 使用Fetch API发送GET请求并获取数据。
  • 确保响应成功后,将响应转换为文本格式。
  • 在页面上显示响应的数据。如果请求失败或发生错误,会在控制台打印错误信息。

到了这里,关于JavaScript--AJAX的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Javascript】ajax(阿甲克斯)

    目录 什么是ajax? 同步与异步 原理 注意 写一个ajax请求  创建ajax对象 设置请求方式和地址 发送请求 设置响应HTTP请求状态变化的函数 是基于javascript的一种用于创建快速动态网页的技术,是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,主要用来在前端页

    2024年02月06日
    浏览(53)
  • JavaScript全解析——Ajax(上)

    ●认识前后端交互 ○就是 前端 与 后端的 一种通讯方式 ○主要使用的技术栈就是 ajax (async javascript and xml) ●ajax 特点 ○使用 ajax 技术网页应用能够快速的将新内容呈现在用户界面 ○并且不需要刷新整个页面, 也就是能够让页面有 \\\"无刷更新\\\" 的效果 ●注意点: ○前后端交互只

    2024年02月08日
    浏览(101)
  • JavaScript全解析——Ajax是什么(上)

    AJAX 是 Asynchronous JavaScript And XML 的缩写。 它不是一种编程语言。它是一种基于 HTML、CSS、JavaScript 和 XML ,让开发更好、更快和更有互动的 Web 应用的技术。 前后端交互就是前端与后端的一种通讯方式,主要使用的技术栈就是 ajax (async javascript and xml 使用 ajax 技术网页应用能够

    2024年02月05日
    浏览(46)
  • 探索异步交互:JavaScript AJAX 的全面指南

    ​🌈个人主页:前端青山 🔥系列专栏:JavaScript篇 🔖 人终将被年少不可得之物困其一生 依旧 青山 ,本期给大家带来JavaScript篇专栏内容:JavaScript-AjAx 目录 AJAX AJAX 的优势 AJAX 的使用 创建一个 ajax 对象 配置链接信息 发送请求 一个基本的 ajax 请求 ajax 状态码 readyStateChange resp

    2024年02月03日
    浏览(52)
  • 第十一篇JavaScript JSON与AJAX

    在JavaScript中,JSON(JavaScript Object Notation)是一种常用的数据格式,用于存储和交换数据。它基于JavaScript的对象字面量语法,但具有更宽松的语法规则。 json 是一种轻量级的数据交换格式 。 JSON使用键值对的方式表示数据,其中键是一个字符串,值可以是字符串、数字、布尔

    2024年04月16日
    浏览(35)
  • AJAX (Asynchronous JavaScript And XML)异步的JavaScript 和 XML

    Asynchronous JavaScript And XML     异步的JavaScript 和 XML 异步和同步:客户端和服务器端相互通信的基础上 同步:客户端必须等待服务端的响应。在等待的期间客户端不能做其他操作。 异步:客户端不需要等待服务器端的响应。在服务器处理请求的过程中,客户端可以进行其他操

    2024年02月09日
    浏览(42)
  • 深入了解JavaScript中的AJAX和HTTP请求

    在现代Web开发中,AJAX(Asynchronous JavaScript and XML)和HTTP请求被广泛应用于实现动态交互式网页。本文将深入探讨AJAX的概念、工作原理以及使用方法。 AJAX是一种利用JavaScript和HTTP请求与服务器进行异步通信的技术。传统的浏览器请求页面会刷新整个页面,而AJAX允许在不刷新页

    2024年02月08日
    浏览(46)
  • javascript二维数组(21)执行异步HTTP(Ajax)请求的方法($.get、$.post、$getJSON、$ajax)

    . g e t 、 .get、 . g e t 、 .post、 g e t J S O N 、 getJSON、 g e t J SON 、 ajax都是jQuery提供的用于执行异步HTTP(Ajax)请求的方法。每个方法都有其特定的用途和区别。 . g e t :这个方法使用 G E T 方式来进行异步请求。其语法结构为: .get:这个方法使用GET方式来进行异步请求。其语

    2024年02月07日
    浏览(53)
  • JavaScript中最重要的一环之一,ajax发送请求!!

    如需向服务器发送请求,我们使用 XMLHttpRequest 对象的  open()  和  send()  方法: 方法 描述 open( method ,  url ,  async ) 规定请求的类型 method :请求的类型:GET 还是 POST url :服务器(文件)位置 async :true(异步)或 false(同步) send() 向服务器发送请求(用于 GET) send( stri

    2024年01月17日
    浏览(49)
  • 前端架构师之01_JavaScript_Ajax

    1.1 Web服务器 Web服务器又称为网站服务器,主要用于提供网上信息浏览服务。 常见的Web服务器软件有Apache HTTP Server(简称Apache)、Nginx等。 浏览器与服务器交互 在Web服务器中,请求资源又分为静态资源和动态资源。 静态资源的特点:只要服务器没有修改这些文件,客户端每

    2024年02月07日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包