ajax的介绍及使用

ajax的介绍

开发流程

前端

ajax:前后端沟通的桥梁

后端

ajax介绍

ajax叫做异步的Javascript和xml

ajax通过浏览器与服务器(后端)进行少量数据交互,进行页面异步更新(网页不会重新加载)

优点:

  1. 减轻服务器负担,按需要获得数据。

  2. 无刷新更新页面,减少用户的实际和心理的等待时间,更好的用户体验。

同步和异步

同步(阻塞):一次只能执行一个程序,当程序中断会影响后面的程序执行

异步(非阻塞):一次可以执行多个程序,互不干扰。当程序中断不会影响后面代码执行

ajax的get请求

get请求分为四个步骤:
1、创建ajax对象
2、配置请求的方式和请求的地址
3、发送请求
4、监听状态的改变,获取响应的数据

1、创建ajax对象

let xhr = new XMLHttpRequest();

2、配置请求方式和地址

xhr.open('请求方式','请求的url地址?参数1=值&参数2=值')

3、发送http请求

xhr.send(null);

4、监听状态改变获取响应数据

xhr.onreadystatechange = function(){
    //判断请求是否完成
    if(xhr.readyState == 4 && xhr.status == 200){
        console.log(xhr.responseText)
    }
}

ajax的post请求

post请求分为五个步骤:
1、创建ajax对象
2、配置请求的方式和请求的地址
3、设置请求头
4、发送请求
5、监听状态的改变,获取响应的数据

1、创建ajax对象

let xhr = new XMLHttpRequest();

2、配置请求方式和地址

xhr.open('请求方式','请求的url地址?参数1=值&参数2=值')

3、设置请求头

xhr.setRequestHeader('content-type','application/x-www-form-urlencoded')

4、发送http请求

xhr.send(null);

5、监听状态改变获取响应数据

xhr.onreadystatechange = function(){
    //判断请求是否完成
    if(xhr.readyState == 4 && xhr.status == 200){
        console.log(xhr.responseText)
    }
}

XMLHttpRequest对象属性

readyState(***)

0: 请求未初始化

1: 服务器连接已建立

2: 请求已接收

3: 请求处理中

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

status

http的状态码为200,则代表成功 OK

常见的http状态码

200 (成功)

304 (未修改) 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。

403(禁止) 服务器拒绝请求。

404 (未找到) 服务器找不到请求的网页。

500 (服务器内部错误) 服务器遇到错误,无法完成请求

responseText

responseText 后端响应的内容

ajax调试四看

四看:

*1看地址* ( 查看请求地址有没有写对,有没有拼接完整 )

*2看方式和状态码*( 查看请求方式有没有写错,状态码是不是绿色的 )

*3 看参数*( 看请求参数有没有发出去,参数名是否拼写正确,参数值有没有 )

*4 看响应*( 看后端返回的结果有没有,数据对不对 )

 

请求头常见的类型

  • application/x-www-form-urlencoded 表单默认提交的格式

表单提交的格式 name=zhangsan&age=18

  • application/json

提交格式为json字符串 {name:'张三',age:18}

JSON.stringify()将数据转换为json字符串

  • formData

传输文件类型

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/14486.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C/C++中的数据结构对齐,#pragma pack() 和 __attribute__

C/C中的数据结构对齐 总览 数据结构对齐是指在计算机内存中排列和访问数据的方式。它包含三个独立但相关的问题:数据对齐(data alignment),数据结构填充( data structure padding)和打包(pack…

1.2和1.3、GCC

1.2和1.3、GCC 1.2和1.3、GCC1.2.1、什么是GCC1.2.2、编程语言的发展1.2.3、GCC工作流程1.2.4、gcc和g的区别1.2.5、GCC常用参数选项实际操作①接下来进行预处理操作(test.c为需要预处理的源代码,test.i为要生成的目标代码)②汇编操作&#x…

【Linux】二、Linux的基本指令

1、ls指令 语法 : ls [ 选项 ][ 目录或文件 ] 功能 :对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。 常用选项: (1)、-a 列出目录下的所有文件&#x…

按照条件向Spring容器中注册bean

1.Conditional注解概述 Conditional注解可以按照一定的条件进行判断,满足条件向容器中注册bean,不满足条件就不向容器中注册bean。 package org.springframework.context.annotation;import java.lang.annotation.Documented; import java.lang.annota…

基于 Python 的 Meta AI —— SAM

Segment Anything Model(SAM)是 Facebook 的一个 AI 模型,旨在推广分割技术。在我们之前的文章中,我们讨论了 SAM 的一般信息,现在让我们深入了解其技术细节。SAM 模型的结构如下图所示,图像经过编码器得到…

Leetcode-day4【88】【167】【125】【345】

文章目录 88. 合并两个有序数组题目解题思路解题思路【学习】尾插入法 167. 两数之和 II - 输入有序数组题目解题思路 125. 验证回文串题目解题思路 345. 反转字符串中的元音字母题目解题思路 88. 合并两个有序数组 题目 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums…

修改DaemonSet 的/args参数后多个pod重启的顺序

理论 当您修改了DaemonSet的/args参数时,DaemonSet控制器会自动触发Pod的滚动更新。滚动更新的过程是逐个将旧的Pod删除并创建新的Pod,以确保应用程序的高可用性和稳定性。 在进行滚动更新时,DaemonSet控制器会按照以下步骤逐个重启Pod&…

问卷中多选题如何分析?

一、案例与问卷 本研究选取大学生作为研究对象,旨在通过理财认知、理财现状、理财偏好三个方面,对大学生理财产品了解情况、使用需求进行调查。本次问卷共分为四个部分:第一部分共5道题,为基本信息题;第二部分共3道题…

【Linux高性能服务器编程】I/O复用的高级应用

文章目录 一、基于 select 的非阻塞 connect二、基于 poll 的聊天室程序2.1 客户端2.2 服务器 三、基于 epoll 实现同时处理 TCP 和 UDP 服务 一、基于 select 的非阻塞 connect connect系统调用的 man 手册中有如下一段内容: EINPROGERESS The socket is nonblock…

结构型模式-适配器模式

适配器模式 概述 如果去欧洲国家去旅游的话,他们的插座如下图最左边,是欧洲标准。而我们使用的插头如下图最右边的。因此我们的笔记本电脑,手机在当地不能直接充电。所以就需要一个插座转换器,转换器第1面插入当地的插座&#x…

【java笔记】java多线程

目录 一、概念 1.1 什么是进程? 1.2 什么是线程? 1.3 什么事多线程? 1.4 进程和线程的关系 二、线程对象的生命周期 三、实现线程有两种方式 3.1 继承 java.lang.Thread,重写 run方法 3.2 实现 java.lang.Runnable 接口…

图像描述算法排位赛:SceneXplain 与 MiniGPT4 谁将夺得桂冠?

如果你对图像描述算法的未来感到好奇,本场“图像描述算法排位赛”绝对是你不能错过的!在这场较量中,SceneXplain 和 MiniGPT-4 将会比试,谁将摘得这场比赛的桂冠? 背景介绍 在上篇文章中,我们介绍了图像描述…

【UE】倒计时归零时结束游戏

上一篇博客(【UE】一个简易的游戏计时器)完成了游戏时间每秒1的功能,本篇博客在此基础上完成倒计归零时结束游戏的功能 效果 步骤 1. 打开“ThirdPersonGameMode”,将剩余的秒数和分钟数的默认值分别设置为1和59 在事件图表中添…

Java设计模式-day02

4,创建型模式 4.2 工厂模式 4.2.1 概述 需求:设计一个咖啡店点餐系统。 设计一个咖啡类(Coffee),并定义其两个子类(美式咖啡【AmericanCoffee】和拿铁咖啡【LatteCoffee】);再设…

Linux: 进程间通信机制

文章目录 1. 前言2. 进程间通信机制2.1 管道2.1.1 匿名管道2.1.2 popen() 和 pclose()2.1.3 命名管道 FIFO 2.2 消息队列2.3 共享内存2.4 信号量2.5 网络套接字2.6 UNIX套接字2.7 信号 3. 参考资料 1. 前言 限于作者能力水平,本文可能存在谬误,因此而给…

Javaee Spring的AOP简介

一.Spring的AOP简介 1.1 什么是AOP AOP 为 Aspect Oriented Programming 的缩写,意思为面向切面编程,是通过预编译方式和运行期动态代 理实现程序功能的统一维护的一种技术。AOP 是 OOP 的延续,是软件开发中的一个热点,也是…

shell脚本控制

shell脚本编程系列 处理信号 Linux利用信号与系统中的进程进行通信,通过对脚本进行编程,使其在收到特定信号时执行某些命令,从而控制shell脚本的操作。 Linux信号 shell脚本编程会遇到的最常见的Linux系统信号如下表所示: 在默…

【获奖案例巡展】信创先锋之星——浙江省某市区视频能力中心

为表彰使用大数据、人工智能等基础软件为企业、行业或世界做出杰出贡献和巨大创新的标杆项目,星环科技自2021年推出了“新科技 星力量” 星环科技科技实践案例评选活动,旨在为各行业提供更多的优秀产品案例,彰显技术改变世界的力量&#xff0…

Cycling 74 Max for Mac:音乐可视化编程软件

Cycling 74 Max是一款音乐、视觉、互动艺术等领域中广泛使用的编程语言和应用软件,它允许用户创作和控制实时音频和视频效果、交互式应用程序和媒体艺术品等。 Max将程序设计和可视化编程相结合,通过简单的拖拽和连接方式,用户可以将各种功能…

基于springboot的大学生租房系统源码论文数据库

3.1系统功能 现在无论是在PC上还是在手机上,相信全国所有地方都在进行大学生租房管理。随着经济的不断发展,系统管理也在不断增多,大学生租房系统就是其中一种,很多人会登录到相关的租房系统查看租房信息,还能查看房屋…