Ajax额

原生Ajax

xml

已被json取代

http

请求方法+url+http版本号

network

谷歌浏览器查看请求报文和响应报文

F12       

network

header里面有

请求头

响应头

点击view source

可以查看请求响应行

请求体在请求行头下面

get请求有url参数,请求体变为query String ,会对请求参数进行解析

响应体在response  栏中看

Preview预览效果查看

Nodejs

Nodejs就是一个应用程序可以解析js代码

express框架

基本使用

文件夹最外层启动终端

1.npm init  --yes 进行初始化

2.npm  i  express

Ajax请求发送前的准备

前端页面的准备

服务端代码的准备

Ajax操作的基本步骤

XHR                network选择文件时  XHR  Ajax请求的筛选

获取元素btn

Ajax操作四步

Ajax中设置url参数

如何给url缀参数

用问号?分隔url

a=100  a:参数名,后面是参数值

如果有多个参数用&符分隔

Ajax  post请求

服务端代码需要添加路由

post请求设置请求体

在Payload中查看

Ajax设置请求头信息

在Ajax设置中第二步进行

Content-Type设置请求体内容的类型

           为其固定内容

通常来说,身份校验的信息会存在头信息里面,,被服务器端提取,进行校验

 自定义请求头设置

1.

自定义请求头因为浏览器的安全机制,会报错

需要在服务端代码中添加设置响应头 

允许自定义头信息

2.使用自定义请求头,会自动发送options请求(全新的校验,检测头信息是否可用)

需要将端口   路由设置 接受改为all  可以接受任意类型的请求

设置请求头信息一般用于存储身份校验的信息

Ajax请求服务端响应Json

通常情况下,服务端返回结果绝大多数都是json格式的数据

服务端设置

服务端设置响应体数据

response.send()只能传入String和Buffer

ajax第四步设置

手动对传来的响应体数据进行转换

自动转换

第一步

nodemon

IE浏览器缓存问题

Date.now()时间戳

这时再发送请求  每次都是不同的请求,会发送新的请求,不会走浏览器本地缓存

请求超时控制和网络异常处理

/delay

取消请求

abort()

重复请求问题

jQuery中Ajax

用bootcdn时,在标签内  加  crossorigin="anonymous"        跨源请求的一个属性设置,    设置匿名后,向后面的资源发送请求时不会携带当前域名下的cookie             可以消除一个警告

第一个参数是给谁发;第二个参数是一个data参数对象用键值对的形式保存;第三个参数是一个回调函数

get请求下  date参数对象成为url字符串参数       post请求下  成为请求体

jQuery通用方法发送Ajax请求

axios       Ajax工具库

axios 可以发送url参数,也可以发送请求头信息

get方法无法设置请求体,在post方法中才能设置请求体

get请求

.then方法返回的是一个Axios对象

用于设置回调函数

post请求

post方法ruguodiergecansh

axios 通用方法发送请求

method:post

后面添加.then  可以进行响应结果的处理

response 

 

fetch函数发送Ajax请求 

fetch函数属于全局对象,返回结果是Promise对象

第一个参数是URL,第二个参数是一个对象包含各种请求内容

跨域

同源策略

同源策略就是来自于同一个服务器内容

同源策略就是本页面和请求都来自于同一个服务端  server.js

jsonp解决跨域

script标签本身具有跨域特性,例如bootcdn的使用,使用远程资源进行Axios等的服务

open  with liveServer   (访问方式为http协议) 打开页面其中可以找到源文件 的http路径

将原本的url文件url换成完整的url

jsonp实现跨域原理

然后Script标签对里面的内容做解析处理

这里的js文件的请求是一个跨域请求

、、

这里用script标签的src引入这个服务  会发生错误  因为这个服务返回的是字符串,

script标签无法对其进行解析

、、

原理:script请求src过去后,需要回来的结果是一段js代码,这样浏览器才能解析和执行代码

返回结果的形式是一个函数调用,而函数的参数是我们想给客户端返回的结果数据

jsonp案例

案例实现目标:

失去焦点后,边框变红,并在下面显示‘已存在’。

回调函数

返回结果

 

jQuery发送jsonp请求

注意:使用jQuery发送jsonp请求时,需要在url补一个参数

写的时候callback的值是?   实际发送请求时 有值        服务端会接收到callback参数值

需要callback参数的值作为函数调用的函数去拼接字符串

现在jQuery已经注册一个这样的callback函数

只要服务端返回结果是这个函数的调用,则前端会对这个代码数据进行处理

服务端返回结果设置

cors

常用

5.11.12

onreadyststechange

readystate  是xhr对象中的属性 有五个值

0:xhr未初始化

1:open方法调用完毕

2:send方法调用完毕

3:服务端返回部分结果

4:返回所有结果

xhr.status

响应状态码

响应行:http版本  响应状态码   状态字符串

xhr.statusText

 

响应头

空行

响应体

AJax请求基本操作

1.创建对象

const  xhr = new XMLHttpRequest()

2.初始化 设置请求方法和url

xhr.open('GET','http://127.0.0.1:8000/server');

3.发送

xhr.send();

4.事件绑定     处理服务端返回的结果

xhr.onreadysatechange=function(){

        

}

报文样式

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于springboot实现的家具销售电商平台

开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包&…

超分辨率技术

何为超分辨率? 超分辨率技术(Super Resolution):通过硬件或软件的方法提高图像或视频帧的分辨率, 通过一系列低分辨率图像获取到高分辨率图像的过程。 功能介绍:提升图像或视频分辨率最高至8K,…

C#窗体程序设计笔记:如何调出控件工具箱,并设置控件的属性

文章目录 调出控件工具箱设置控件属性 调出控件工具箱 使用Visual Studio打开C#解决方案后,初始界面如下图所示: 接着,在上方的菜单栏依次选择“视图”“工具箱”,即可打开工具箱,如下图所示: 设置控件属…

前端CSS3基础1(新增长度单位,盒子模型,背景,边框,文本属性,渐变,字体,2D变换,3D变换)

前端CSS3基础1(新增长度单位,盒子模型,背景,边框,文本属性,渐变,字体,2D变换,3D变换) CSS3 新增长度单位CSS3 新增盒子模型相关属性box-sizing怪异盒模型box-…

【VMware】vSphere 8.0 安装和设置简介

本信息的目标读者为熟悉虚拟机技术和数据中心操作并具有丰富经验的 Windows 或 Linux 系统管理员。 vSphere 8.0 提供了各种安装和设置选项,这些选项定义了相应的任务序列。 vSphere 的两个核心组件是 ESXi 和 vCenter Server。ESXi 是可用于创建和运行虚拟机和虚拟…

如何去掉试卷答案,并打印出来

实际上,针对试卷答案的问题,一个简单而高效的方法是使用图片编辑软件中的“消除笔”功能。只需将试卷拍摄成照片,然后通过这一功能,就可以轻松擦除答案。虽然这种方法可能需要一些时间和耐心,但它确实为我们提供了一个…

vue布局设置——使用 el-drawer 打造个性化 Admin 后台布局设置

在前端开发中,我们常常需要为 admin 后台构建灵活且个性化的布局设置。今天,我要分享的是如何利用 el-drawer 来实现这样一个有趣的功能。 首先,我们来看一下主要的设置参数: 1. theme: 用于定义主题,可以根据需求切换…

文心一言 VS 讯飞星火 VS chatgpt (259)-- 算法导论19.3 2题

二、使用聚合分析来证明 FIB-HEAP-DECREASE-KEY 的 O(1) 摊还时间是每一个操作的平均代价。如果要写代码,请用go语言。 文心一言: FIB-HEAP-DECREASE-KEY 是斐波那契堆(Fibonacci Heap)操作中的一个,它允许我们减少堆…

vue3专栏项目 -- 五、权限管理(上)

一、登录部分 1、第一部分:获取token 前面我们主要是在获取数据上下功夫,到目前为止我们已经能获取首页和详情页的数据了,现在我们将数据转移到权限管理上来,也就是说我们要处理用户登录、注册等一系列的行为,在这部…

R语言:ROC分析

> install.packages("pROC") > library(pROC) > inputFile"结果.txt" > rtread.table(inputFile, headerT, sep"\t", check.namesF, row.names1) > head(rt) con treat TCGA-E2-A1L7-11A-con…

生产环境磁盘变更方案

datanode磁盘扩容(1人天) 扩容磁盘 1.1 扩容前检查、新盘初始化 确定block副本统计正常,无丢块,无under-replicated 块 后台执行命令检查 hdfs dfs fsck / 无异常可进行以下步骤进行磁盘扩容 新盘初始化 ##格式化新盘,命令示例: mkfs.xfs /dev/sdc##挂载新盘,命令示…

[数据集][图像分类]抽烟打电话分类数据集6150张3类别

数据集类型:图像分类用,不可用于目标检测无标注文件 数据集格式:仅仅包含jpg图片,每个类别文件夹下面存放着对应图片 图片数量(jpg文件个数):6150 分类类别数:3 类别名称:["normal","phone&…