首页 > 其他分享 >AJAX发送请求到服务器获取信息和状态码到前端浏览器------前端

AJAX发送请求到服务器获取信息和状态码到前端浏览器------前端

时间:2023-11-14 10:33:25浏览次数:44  
标签:obj 请求 前端 AJAX 发送 码到 ajax XMLHttpRequest

AJAX在浏览器当中发送异步请求,请求之间是独立的,谁也不用等谁

类似于多线程并发,不会出现页面清空然后展示新的页面的效果

实现局部刷新(靠多种技术一起做到的,而不是一个技术叫ajax)

它是异步的(类似于多线程)

在AJAX的请求以及响应中完全依靠的是XMLHttpRequest对象

XMLHttpRequest对象的readyState属性记录了XMLHTTPREQUEST对象的状态

这个ReadyState属性的对应值有

0请求未初始化

1服务器连接已建立

2请求已收到

3正在处理请求

4请求已完成且响应已就绪

因此我们说当XMLHttpRequest对象的readyState属性变成4的时候

表示这个AJAX请求和响应已经全部完成

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ajax Get</title>
</head>
<body>
<script type="text/javascript">
  window.onload = function ()
  {
    document.getElementById("AJAX").onclick = function ()
    {
      //发送ajax请求
      console.log("发送请求");
      //4步发送AJAX请求
      //第一步创建ajax核心对象XMLHttpRequest
      var obj = new XMLHttpRequest();
      //第二步注册回调函数
      //当我们的readystate值发生改变我们就执行一次回调函数
      obj.onreadystatechange = function ()
      {
        //这里的内容会被调用多次
        //0到1到2到3到4(AJAX请求有四步)
        console.log(obj.readyState);
        //但这个值等于4的时候,就是响应结束了
        //响应结束之后一般会有一个Http的状态码
        //200成功,404丢失,500错误服务器
        if(this.readyState === 4)
        {
          console.log(this.status);
          if(this.status === 404)
          {
            alert("对不起,您访问的资源不存在");
          }
        }
      }
      //第三步开启通道
      //open函数方法的值都是啥
      //第一个method,请求方法,可以是get可以是post或者其他请求
      //url就是请求路径
      //async只能是true或者false,true表示支持异步请求,false表示不支持(同步请求)
      //一般都是支持异步的,这样用户体验更好,极少数情况是不支持的同步
      //username和password就是用户名和密码,有部分特殊资源是需要口令的,用户名和密码是用来对此做限制的
      //需要的较少,这个是身份认证用的
      obj.open("GET","/ajax/ajaxRequest1",true);
      //open只是打开通道,并不是执行,只是浏览器和服务器建立链接
      //第四步发送请求
      obj.send();
      // 这才是真正发送请求
    }
  }
</script>
<!--  给一个按钮,用来发送ajax请求-->
  <input type="button" id="AJAX" value="AJAX请求发送"/>
<!--给一个DIV盒子用来显示ajax回传的数据信息-->
  <div id="myDiv"></div>
</body>
</html>

标签:obj,请求,前端,AJAX,发送,码到,ajax,XMLHttpRequest
From: https://blog.51cto.com/u_16322355/8362754

相关文章

  • 欢迎解答-Web开发人员的技能和经验熟悉的前端框架是
    当然,我可以为你提供一些典型的面试问题,以评估Web开发人员的技能和经验。请问你对以下问题有何回答?你最熟悉的前端框架是什么?请分享你在具体项目中使用该框架的经验。你对响应式设计和移动优先的开发有何了解?可以分享你在开发这方面的经验吗?请描述你在使用JavaScript编写复杂交互功......
  • 记录--让我们来深入了解一下前端“三清”是什么
     这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助前端“三清”在前端开发中,我们经常听到关于“三清”的说法,即window、document、Object。这三者分别代表了BOM(浏览器对象模型)、DOM(文档对象模型)以及JS的顶层对象。在这个体系中,我们通过JavaScript与浏览器......
  • 前端大文件上传优化方案——分片上传
    介绍前端上传大文件的常见问题和解决方案,分片上传这样可以避免一次性上传大文件导致的网络超时、内存溢出、进度不可控等问题。要实现大文件分片上传,通常需要以下几个步骤:1.通过DOM获取文件对象,并且对文件进行MD5加密(文件内容+文件标题形式),采用SparkMD5进行文件加密;2.进行分片......
  • JavaScript使用JS从JSON获取信息并遍历输出到网页展示信息------前端
    遍历JSON获取数据<!DOCTYPEhtml><!--这是HTML的注释--><htmllang="en"id="myHtml"> <head> <!--这里不是设置了编码,而是告诉浏览器,用什么编码方式打开文件避免乱码--> <metacharset="UTF-8"> <metaname="viewport"......
  • node+express服务给前端提供markdown数据,前端渲染md文件在页面上
    本文介绍后端怎么把markdown文件发给前端,前端又怎么渲染在页面中。先看效果图md文件代码: 前端网页渲染: 先介绍node+express怎么提供接口:constexpress=require("express");constrouter=express.Router();constfs=require("fs");router.get("/api/getMark......
  • 优秀的前端工具FinClip Studio 有哪些值得期待的价值点?
    现今,移动应用程序已成为一项重要的技术,人们几乎在所有方面都使用移动应用程序,包括社交媒体、电子商务、娱乐、健康和生产力等领域。用户对移动应用程序的体验和功能需求越来越高,这意味着开发人员需要花费更多的时间和精力来确保应用程序的质量和用户体验。幸运的是,现在有许多可用......
  • 轻量前端框架能否与小程序结合应用?
    前端框架一般指用于简化网页设计的框架,使用广泛的前端开发套件,比如,jquery,extjs,bootstrap等等,这些框架封装了一些功能,比如html文档操作,漂亮的各种控件(按钮,表单等等),使用前端框架可以帮助快速地搭建网站。框架是提供一套完整的解决方案,按照规定好的代码结构来做编排,使用前端框架可......
  • 第十一章、web前端架构师
    目录二十四、自研统计服务,使作品能实现分渠道统计1、二十四、自研统计服务,使作品能实现分渠道统计1、......
  • 什么是前端应用开发的 LCP(Largest Contentful Paint) 指标
    在网页性能优化的领域里,LCP(LargestContentfulPaint,最大内容绘制)是一个非常重要的性能指标。它测量的是从页面开始加载到页面的"主要内容"完全呈现在屏幕上所需的时间。换句话说,LCP是测量用户何时看到页面的"主要内容"的指标。在理解LCP之前,我们需要知道一个概念,那就是......
  • 前端歌谣的刷题之路-第八十题-无重复数组
     前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从头再来歌谣的意志是永恒的放弃很容易但是坚持一定很酷本题目源自于牛客网微信公众号前端小歌谣题目......