AJAX——ajax、XML、HTTP、node、express

AJAX(一) AJAX全称为 Asynchronous JavaScript And XML,就是异步的JS和XML。通过AJAX可以在浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据AJAX不是新的编程语言(使用的js),而是一种将现有的标准组合在一起使用的新方式。页面出现新内容但是页面没有进行刷新即为异步。AJAX的示例如下所示:1.其中输入abcd而引起的相关的关键字并不是本地生成的,而是通过向服务器发送请求,数据从服务器返回回来的。2. 阅读详情

AJAX

AJAX全称Asynvhronous JavaScript And XML,就是异步的js和XML

通过ajax 可以在浏览器中想服务器发送异步请求,最大的优势:无刷新获取数据

ajax不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式

优点:

1.无需刷新页面就可以与服务器端进行通信

2.允许根据用户事件来更新部分页面内容

缺点“

1.没有浏览历史,不能回退

2.存在跨域问题(同源)

3.SEO(搜索引擎优化)不友好

XML

xml:可扩展标记语言

html:超文本标记语言

xml:被设计用来传输和存储数据

html:用来在页面中展示数据

xml和html类似,不同的是html中都是预定义标签,而xml中没有预定义标签,全都是自定义标签,用来表示一些数据

<person>
	<name>张三</name>
	<age>22</age>
</person>

json比较xml简洁、方便

HTTP

http(Hypertext transport protocol):超文本传输协议,协议详细规定了浏览器和万维网(www,World Wide Web)服务器之间互相通信的规则

请求:浏览器向服务器发送的内容(请求报文)

请求报文的内容:

1.请求行:包括请求类型(GET/POST…),url路径,HTTP协议的版本

url路径:

完整的网址如下:
https://www.w3school.com.cn/jquery/index.asp
url的路径所需的部分:
/jquery/index.asp

2.请求头:格式(名字冒号空格加值):名字: 值(值和冒号之间是一个空格)

3.空行:作用是为了把请求头和请求体隔开,必须有

4.请求体:如果是get的请求,请求体就是空的;如果是post请求,不为空,可以放请求参数

get请求的参数在url里面,而post请求的参数在请求体里面

一个较为完整的请求报文:

请求行:
POST /jquery/index.asp HTTP/1.1
请求头:
Host: xxx.com
Cookie: name=xxxxxx
Content-type: application/x-www-form-urlencoded
User-Agent: chrome 83
空行
请求体:
username=admin&pws=123456

响应:服务器向浏览器返回的结果(响应报文)

1.响应行:协议版本 响应状态码 响应状态字符串(如:HTTP/1.1 200 ok)

2.响应头:格式和请求报文的请求头格式一样,名字冒号空格加值

3.空行:作用是为了把请求头和请求体隔开,必须有

4.响应体:存放响应结果(html内容)

在浏览器控制台的network那里进行查看调试

node.js

Node.js 就是运行在服务端的 JavaScript

node.js是一个基于Chrome V8引擎的javascript运行时(建立的一个平台)

Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。

express

express是基于node.js平台的一个快速、开放、极简的web开发框架。

先初始化:npm init --yes(-y)

安装:$ npm install express --save

express的基本使用

// 引入express
const express = require('express');

// 创建应用对象
const app = express();
// 创建路由规则
// req:request,是对请求报文的封装
// res:response,是对响应报文的封装
app.get('/', (req, res) => {
        // 设置响应
        res.send('hello,express!');
    })
    // 设置监听端口
//关闭端口号:ctrl+c
app.listen(8003, () => {
    console.log('服务器已启动');
})

发送ajax(get)请求,将结果输出到页面

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        #box {
            width: 200px;
            height: 100px;
            border-radius: 5px;
            border: 1px solid peru;
        }
    </style>
</head>

<body>
    <button id="btn">发送请求</button>
    <div id="box">

    </div>
    <script>
        // 获取dom元素
        // const btn = document.getElementsByTagName('button')[0];
        const btn = document.getElementById('btn');
        const box = document.getElementById('box');
        btn.onclick = function() {
            // 创建对象
            const xhr = new XMLHttpRequest();
            // 初始化,设置请求方式和路径url
            xhr.open('GET', 'http://127.0.0.1:8003/server');
            // 发送
            xhr.send();
            //事件绑定,处理服务端返回的结果
            // on(当)readystate(是xhr对象的属性,表示状态)change(改变)
            // 0( 未初始化), 1(open方法调用完毕), 2(send方法调用完毕), 3(服务端返回了部分结果), 4(服务端返回了全部结果))
            // 发送请求的过程,状态会改变4次,方法就会被触发4次
            xhr.onreadystatechange = function() {
                // 判断服务器是否返回了全部结果(状态是否为4)
                if (xhr.readyState === 4) {
                    //判断响应的状态码
                    // 2xx 都代表成功
                    if (xhr.status >= 200 && xhr.status < 300) {
                        // 处理结果(响应行,响应头,空行,响应体)
                        // 1.响应行(http协议版本,状态码,状态字符串)
                        /* console.log("状态码:" + xhr.status); //状态码
                        console.log("状态字符串:" + xhr.statusText); //状态字符串
                        console.log("所有响应头:" + xhr.getAllResponseHeaders()); //所有响应头
                        console.log("响应体:" + xhr.response); //响应体 */
                        // 将响应信息输出到页面上
                        box.innerHTML = xhr.response;
                    }
                }
            }
        }
    </script>
</body>

</html>

设置参数:

在url后面添加参数,用**?隔开,有多个参数,用&**分隔

http://127.0.0.1:8003/server?name=zs&age18

post请求

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>post</title>
    <style>
        #box {
            width: 200px;
            height: 100px;
            border-radius: 5px;
            border: 1px solid peru;
        }
    </style>
</head>

<body>
    <div id="box">

    </div>
    <script>
        const box = document.getElementById('box');
        box.addEventListener('mouseover', function() {
            // 创建对象
            const xhr = new XMLHttpRequest();
            // 初始化
            xhr.open('POST', 'http://127.0.0.1:8003/server');
            // 发送
            // post请求的请求数据(请求体)是在send方法里面设置
            // 请求体内的参数格式可以设置任意格式,任意类型数据
            // xhr.send('name=zs&age=22&sex=男'); //在request payloat中查看
            xhr.send('name:zs&age:22&sex:男');
            // 事件绑定,监听状态改变
            xhr.onreadystatechange = function() {
                // 判断服务端是否返回了全部结果
                if (xhr.readyState === 4) {
                    // 判断状态
                    if (xhr.status >= 200 && xhr.status < 300) {
                        // 处理服务端返回的结果
                        box.innerHTML = xhr.response;
                    }
                }
            }
        })
    </script>
</body>

</html>
机器学习---xgboost算法 问题上表现的十分顶尖,本节将较详细的介绍XGBoost的算法原理。成和剪枝分别对应了经验风险最小化和结构风险最小化, XGBoost的决策树生成是结构风险最小。式(1.1)称为经验风险最小化,训练得到的模型复杂度较高。出结果, 是模型的输出结果;等式右边第⼀部分是模型的训练误差,第⼆部分是正则化项,这里。其中,F是假设空间,假设空间是在已知属性和属性可能取值的情况下,对所有可能满足目标的情。最小化,结构风险最小化的模型往往对训练数据以及未知的测试数据都有较好的预测。的正则化项是K棵树的正则化项相加而来的。 阅读详情

相关推荐

ADS1256单端vs差分接法详解:在STM32上实现8通道电压采集与4通道差分测量的实战对比

本文深入解析ADS1256在STM32平台上的单端8通道与差分4通道电压采集方案,详细对比两种接法的硬件设计、软件配置及性能差异。通过CubeMX配置SPI接口和优化数据读取时序,实现高精度测量,适用于工业监测等高要求场景。

weixin_29165465的博客 245

Express框架与Ajax应用

文章目录Express框架Ajax发送请求前的准备前端页面的准备服务端的代码准备用Ajax发送GET请求服务器端js请求端代码的注意点Ajax设置请求参数 Express框架 Express 是一个基于 Node平台的Web应用开发框架,它提供了一系列的强大特性,帮助你创建各种Web应用。 Express 框架特性: 提供了简洁的路由定义方式 对获取 http 请求参数进行了简化处理 对模板引擎支持程度高,方便渲染动态HTML页面 拥有中间件机制有效控制 HTTP 请求 拥有大量第三方中间件对功能进行扩展

十八岁讨厌编程的博客 1636

论文阅读——Bayesian Knowledge Fusion(贝叶斯知识融合)

该篇论文解决了不确定环境中的信息融合问题。想象一下,有多位专家针对同一情况构建概率模型,我们希望汇总他们提供的信息。直接合并每个信息可能会遇到几个问题。例如,专家们可能不同意某个事件发生的概率,或者他们可能不同意两个事件之间因果关系的方向(例如,一个人认为 A 导致 B,而另一个人认为 B 导致 A)。他们甚至可能不同意概率网络中一组变量之间的整个依赖结构。

qq_64164071的博客 1497

express ajax 总结

express-generator 生成器 通过 express的生成器 可以快速搭建一个应用程序的骨架 安装 npm i express-generator -g 搭建项目 安装完成后,可以使用 express 命令 搭建项目 会自动生成一个项目结构 // 语法规则 express 模板引擎 项目名称 // 案例 express -e myapp 进入到项目根目录 cd myapp 安装依赖 npm install npm i 运行项目 npm run start 认识ajax 一、a

m0_55832273的博客 1310

Android 10 根文件系统和编译系统(十):Android.mk编译动态库

配套系列教学视频链接: Android 10.0 AOSP源码编译: 2-AOSP源码开发环境搭建 Android 10.0 根文件系统和编译系统: 3-Android根文件系统和编译系统 说明 系统:AOSP Android10.0 设备:Android模拟器 前言 本文章重点讲解Android.mk如何控制编译源码编译成动态库 ...

ldswfun的专栏 932

YOLO11实战:手把手教你优化钢材表面缺陷识别模型(基于NEU-DET数据集)

本文详细介绍了如何使用YOLO11优化钢材表面缺陷识别模型,基于NEU-DET数据集进行实战训练。从数据增强、模型架构优化到训练过程控制,全面解析提升钢材缺陷检测性能的关键技术,特别针对裂纹、划痕等典型缺陷提出针对性解决方案。

weixin_29081163的博客 379

1.利用ajax和express实现前后端交互

最近准备找工作了,笔试上了一家比较大公司,准备体现下自己的实力,希望贵公司可以看见,还有觉得有用的可以点一下赞。 ajax.html 用原生js封装ajax 实现get格式上传请求数据 实现post格式上传请求数据 实现中断请求 缺点:由于时间问题没封装成 promise <p></p> <script> let p = document.querySelector('p') ajax( { // url:'http:/

喜大普奔 771

LiveGBS流媒体平台GB/T28181实战指南:海康NVR物联网卡摄像头注册失败全链路排查与抓包技巧

本文详细解析了LiveGBS流媒体平台中海康NVR物联网卡摄像头注册失败的常见问题及解决方案。通过全链路排查与抓包技巧,包括物联网卡配置、多网卡冲突处理、防火墙设置等,帮助用户快速定位并解决GB/T28181协议下的设备注册难题,提升流媒体平台部署效率。

weixin_29290947的博客 492

学习AJAX必知必会(1)~Ajax介绍、xml介绍、express框架

学习AJAX必知必会(1)~Ajax介绍、xml介绍、express框架

伟庭的博客 2454

基于STM32和MPU6050的手势控制小车设计与实现

MPU6050传感器:用于检测手势变化,采集加速度和陀螺仪数据。STM32微控制器:处理MPU6050传感器的数据,根据手势变化控制小车的运动。电机驱动模块:接收来自STM32的控制信号,驱动小车的电机,实现小车的前进、后退、左转和右转。小车底盘:作为整个系统的机械部分,提供移动平台。MPU6050是一款集成了3轴加速度计和3轴陀螺仪的传感器,具有高精度、低功耗和小体积等特点。它通过I2C接口与微控制器通信,可以实时采集加速度和角速度数据,广泛应用于运动检测、姿态控制和手势识别等领域。

m0_57781768的博客 2309

Transformer实战(33)——高效自注意力机制

在本节中,我们学习了如何在硬件资源受限的情况下减轻运行大模型的负担,介绍了高效的稀疏 Transformer 模型,通过近似技术(如 Linformer、BigBird 和 Performer) 用稀疏矩阵替代全自注意力矩阵。并观察它们在各种基准测试中的表现,例如计算复杂度和内存复杂度。结果表明,这些方法可以在不牺牲性能的情况下将平方级复杂度降低到线性复杂度。

盼小辉丶的博客 3061

【前端】Ajax请求以及配合express后台服务的用法

Content-type是网络上传输内容的格式标准,用于定义网络文件的类型和网页的编码。AJAX全称Asynchronous JavaScript And XML,就是异步的JS和XML。通过它可以在浏览器中向服务器发送异步请求,无刷新获取数据。它不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式。实现AJAX的执行步骤如4.2。1.1 无需刷新页面与服务器端通信1.2 允许根据用户事件更新部分页面内容2.1 没有浏览历史,不能回退2.2 存在跨域问题。

Shinersmile的博客 899

GameFramework教程✨六、怎样加载一个3D UI

怎样加载一个3D UI

星河造梦坊 1583

前端学习--Ajax部分

本文主要介绍nodemon自动重启工具、同源策略、跨域等内容。本文是根据尚硅谷李强老师Ajax课程,如果有不理解的地方请移步到B站查找并观看相应课程。

AGW.的博客 662

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

AJAX (1) — AJAX简介、XML简介、AJAX优缺点、HTTP协议请求报文与响应文本结构、express的基本使用

目录 一、AJAX简介 二、XML简介 三、AJAX的优缺点 1.AJAX的优点 2.AJAX的缺点 四、HTTP协议请求报文与响应文本结构 1.HTTP (1).请求报文 (2).响应报文 五、express的基本使用 一、AJAX简介 AJAX全称为 Asynchronous Javascript And XML,就是异步的 JS 和 XML 。 通过AJAX可以在浏览器中向服务器发送异步请求,最大...

m0_59897687的博客 261

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

AJAX ------ 预备 AJAX

AJAX 简介 AJAX 全称为 Asynchronous JavaScript And XML,就是异步的 JS 和 XML。 通过AJAX可以在浏览器中向服务器发送异步请求,无需刷新就可获取数据。 XML 简介 XML 可标记语言 被设计用来传输和存储数据 XML 和 HTML 类似,不同的是 HTML 中都是预定义标签,而 XML 中没有预定义标签,都是自定义标签。 注意:XML格式已经被JSON取代了 JSON表示:{“name” : “前端开发人员”} AJAX 特点 优点 可以无需刷新

HuoZhiyan 的博客 830

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

AJAX

1、AJAX简介 AJAX全称为Asynchronous JavaScript And XML,就是异步的 JS 和 XML。 通过AJAX可以在浏览器中向服务器发送异步请求,最大的优势: 无刷新获取数据。 AJAX不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式。 2、XML简介 XML 可扩展标记语言。 XML 被设计用来传输和存储数据。 XML 和 HTML类似,不同的是HTML中都是预定义标签,而XML中没有预定义标签,全都是自定义标签,用来表示一些数据。 比如说我有一个学生数据:

qq_45632660的博客 3522

AJAX(一):初识AJAX、http协议、配置环境、发送AJAX请求、请求时的问题

AJAX 全称为Asynchronous Javascript And XML。就是异步的JS和XML。通过AJAX 可以在浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据。AJAX 不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式。

m0_73560798的博客 272

AJAX封装和跨域

AJAX 全称为 Asynchronous JavaScript And XML,就是异步的 JS 和 XML。通过 AJAX 可以在浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据。按需请求,可以提高网站的性能AJAX 不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式。使用场景:注册账号,核对输入是否符合设置要求,发送ajax请求,返回相关信息京东、淘宝下拉加载更多的数据显示鼠标移入,显示新的页面数据鼠标点击,显示不同的页面切换数据XML 可扩展标记语言。

GQL___的博客 1234

前端学习10—Ajax

XML(可扩展标记语言),被设计用来传输和存储数据,XML 和 HTML 类似,不同的是 HTML 中都是预定义标签,而 XML 中没有预定义标签,全都是自定义标签,用来表示一些数据比如有个学生数据:name = "孙悟空";age = 18;gender = "男";

weixin_49157844的博客 1186

AJAX详解

AJAX全称为Asynchronous JavaScript And XML,就是异步的JS和XML。通过AJAX可以在浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据,实现数据的交换。AJAX不是新的编程语言,而是一种现有的标准组合在一起使用的新方式。下面这种情况:搜索打出原神两字,与原神有关的就都显示在下方,这就是利用了AJAX技术。(最初AJAX返回的数据格式就是XML形式的,现已被JSON取代)

weixin_46515434的博客 986

尚硅谷AJAX

1.AJAX简介 AJAX全称为Asynchronous JavaScript And XML,就是异步的 JS 和 XML。 通过AJAX可以在浏览器中向服务器发送异步请求,最大的优势: 无刷新获取数据。 AJAX不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式。 2.XML简介 XML 可扩展标记语言。 XML 被设计用来传输和存储数据。 XML 和 HTML类似,不同的是HTML中都是预定义标签,而XML中没有预定义标签,全都是自定义标签,用来表示一些数据。 比如说我有一个学生数据: n

WENSHIKADA的博客 378

Ajax_00000

Ajax

wisdom 1037

复习Ajax

ajax简介 ajax全称为Asynchronous JavaScript And XML 就是异步的js和XML,ajax不是一个新的编程语言,而是一种将现有的技术组合在一起使用的新方式 ajax特点 通过ajax可以在浏览器中向服务器发起异步请求,允许用户通过一些事件来实现局部页面更新,最大特点就是可以通过无刷新获取新的数据 ajax缺点 没有历史记录,不能回退,存在跨域问题(同源策略);对seo优化不好 XML简介 xml是一个可扩展语言,被设计用来传输和存储数据,xml和html类似,

Debug的博客 264

Ajax学习笔记(3)

XML 可扩展标记语言。XML 被设计用来传输和存储数据。XML 和HTML 类似,不同的是HTML 中都是预定义标签,而XML 中没有预定义标签,全都是自定义标签,用来表示一些数据。//比如说我有一个学生数据://name = “孙悟空”;age = 18;gender = “男”;//用XML 表示:孙悟空18男现在已经被JSON 取代了。{“name”:“孙悟空”,“age”:18,“gender”:“男”}

2301_82244607的博客 1092

【Ajax】(一)ajax简介、HTTP协议、ajax的准备工作、发送ajax请求、nodemon自动重启工具

可扩展标记语言。XML被设计用来传输和存储数据。XML和HTML类似,不同的是HTML中都是预定义标签,而XML中没有预定义标签,全部都是自定义标签,用来表示一些数据。(目前已经被JSON取代)

matmacchiato的博客 246
上一篇: ECMAScript——指数操作符、async和await、 ES8对象方法扩展
下一篇: AJAX——请求头、json、nodemon、网络异常、取消请求
初级码农小九
博客等级 码龄6年 40粉丝 199原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值