原生js的ajax请求

原生javascript分页 html分页与ajax数据请求结合使用 前端js分页 原生javascript分页功能,与后台结合使用ajax请求数据,是目前大多数前后端分离建站使用的分页展示数据的逻辑 使用示例: 效果图: index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title&g... 阅读详情

传统请求的缺点:
传统的web交互是用户触发一个http请求服务器,服务器收到后再响应给用户并且返回一个页面。每次服务器在处理客户端请求时,用户都要等待,哪怕只是一个很小的交互,服务器都要返回一个完整的html页面,这样用户就浪费了很多时间和带宽获取整个页面。这种做法浪费了很多带宽,每次应用都要向服务器发起请求,这样应用的响应时间就依赖于服务器的响应时间,这导致了用户界面的响应比本地应用慢的多。

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

XMLHttpRequest 对象:XMLHttpRequest对象是ajax的基础,XMLHttpRequest 用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。目前所有浏览器都支持XMLHttpRequest。

这里写图片描述

五步使用法:
1.创建XMLHttpRequest对象。
2.使用open方法设置和服务器的交互信息。
3.设置发送的数据,开始和服务器端交互。
4.注册事件。
5.更新页面。

get请求:

//步骤一:创建异步对象
var ajax = new XMLHttpRequest();
//步骤二:设置请求的url参数,参数一是请求的类型,参数二是请求的url,可以带参数,动态的传递参数starName到服务端
ajax.open('get','getStar.php?starName='+name);
//步骤三:发送请求
ajax.send();
//步骤四:注册事件 onreadystatechange 状态改变就会调用
ajax.onreadystatechange = function () {
   if (ajax.readyState==4 &&ajax.status==200) {
    //步骤五 如果能够进到这个判断 说明 数据 完美的回来了,并且请求的页面是存在的
    console.log(ajax.responseText);//输入相应的内容
    }
}

post请求:

//创建异步对象  
var xhr = new XMLHttpRequest();
//设置请求的类型及url
//post请求一定要添加请求头才行不然会报错
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
 xhr.open('post', '02.post.php' );
//发送请求
xhr.send('name=fox&age=18');
xhr.onreadystatechange = function () {
    // 这步为判断服务器是否正确响应
  if (xhr.readyState == 4 && xhr.status == 200) {
    console.log(xhr.responseText);
  } 
};

为了使用方便,可以将请求封装起来,直接调用就好了:

function ajax_method(url,data,method,success) {
    // 异步对象
    var ajax = new XMLHttpRequest();

    // get 跟post  需要分别写不同的代码
    if (method=='get') {
        // get请求
        if (data) {
            // 如果有值
            url+='?';
            url+=data;
        }else{

        }
        // 设置 方法 以及 url
        ajax.open(method,url);

        // send即可
        ajax.send();
    }else{
        // post请求
        // post请求 url 是不需要改变
        ajax.open(method,url);

        // 需要设置请求报文
        ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");

        // 判断data send发送数据
        if (data) {
            // 如果有值 从send发送
            ajax.send(data);
        }else{
            // 木有值 直接发送即可
            ajax.send();
        }
    }

    // 注册事件
    ajax.onreadystatechange = function () {
        // 在事件中 获取数据 并修改界面显示
        if (ajax.readyState==4&&ajax.status==200) {
            // console.log(ajax.responseText);

            // 将 数据 让 外面可以使用
            // return ajax.responseText;

            // 当 onreadystatechange 调用时 说明 数据回来了
            // ajax.responseText;

            // 如果说 外面可以传入一个 function 作为参数 success
            success(ajax.responseText);
        }
    }

}

XMLHttpRequest对象中readyState与status的几种常见状态
readyState有五种状态:
0 (未初始化): (XMLHttpRequest)对象已经创建,但还没有调用open()方法;

1 (载入):已经调用open() 方法,但尚未发送请求;

2 (载入完成): 请求已经发送完成;

3 (交互):可以接收到部分响应数据;

4 (完成):已经接收到了全部数据,并且连接已经关闭。

关于status,由于它的状态有几十种,我只列出平时常用的几种:
1xx——信息类,表示收到Web浏览器请求,正在进一步的处理中。如,100:客户必须继续发出请求;101:客户要求服务器根据请求转换HTTP协议版本

2xx——成功,表示用户请求被正确接收,理解和处理。例如,200:OK;201:提示知道新文件的URL

3xx——重定向,表示请求没有成功,客户必须采取进一步的动作。如,300:请求的资源可在多处得到;301:删除请求数据

4xx——客户端错误,表示客户端提交的请求有错误。如,404:NOT Found,意味着请求中所引用的文档不存在。

5xx——服务器错误,表示服务器不能完成对请求的处理。如,500,服务器产生内部错误

【AJAX 教程】JS 原生 AJAX 请求 JS 原生 AJAX 请求 目录 目录 AJAX 简介 一、JS 原生 AJAX 请求 实现 AJAX 的基本步骤 XMLHttpRequest 对象 XMLHttpRequest 对象方法 1、创建 XMLHttpRequest 对象 2、设置响应 HTTP 请求状态变化的函数 onreadystatechange 事件 3、向服务器发送请求 GET 请求 POST 请求 Content-type常见类型: 4、服务器 响应 完整实例 总结 AJAX 简介 阅读详情

相关推荐

JavaScript原生Ajax请求的mini-ajax.js实现(PHP)

以下是一个简单的JavaScript原生Ajax请求的mini-ajax.js实现,它可以用于向服务器发送异步请求并接收响应。通过使用这个mini-ajax.js库,你可以在前端与后端之间进行数据交互,无需重新加载整个页面。通过使用这个简单的mini-ajax.js库,你可以方便地进行Ajax请求,并在前端与后端之间进行数据交互。希望这对你有所帮助!在上述示例中,我们向名为"example.php"的服务器端脚本发送了一个GET请求。在上述示例中,我们将"name"和"age"作为数据发送到服务器端脚本。

DsJustintime的博客 156

原生js发送ajax请求

原生js发送ajax请求原理 1.什么是ajax AJAX的全称是Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。推荐文章:ajax是什么。 个人理解:ajax就是在不刷新网页的情况下和后台交互数据。 2. 常用的ajax类库 我用的最多的是jquery。jQuery学习之jQuery Ajax用法详解 3. ...

小雪的博客 1万+

基于STM32的家用新风系统智能控制器 | 保姆式教程 开源可复刻

本项目基于STM32F103C8T6核心控制器,完整实现了家用新风系统智能控制器的全功能开发,覆盖多传感器数据采集、双模式控制、PID调速、异常报警、掉电记忆等核心功能,全程采用保姆式无跳步教学,从硬件选型、接线、CubeMX配置、代码开发、调试排坑全流程拆解,跟着步骤一步步操作,就能顺利完成项目复刻

ZhongWeiXiang9的博客 466

原生js如何使用ajax请求,如何使用原生JavaScript实现AJAX请求

ajax(异步javascript xml)是当下比较常用的请求方式,原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用javascript来操作DOM而更新页面。大多数情况下我们都是使用jquery ajax等其他框架封装好的方法,那么我们自己如何通过原生JavaScript方法实现ajax请求呢?首先,第一个步骤创建一个 XMLHttpRequest...

weixin_42531925的博客 944

从零构建eSIM RSP服务:云原生架构与GSMA合规实践

本文详细阐述了从零开始构建一个符合GSMA SAS-SM安全标准的云原生eSIM RSP服务的完整路径。内容涵盖云原生基础设施选型、容器化部署、GSMA标准接口集成,并重点分享了通过SAS-SM安全审计的实战经验与避坑指南,为物联网及智能设备企业自建可控的远程SIM配置服务提供了系统性的解决方案。

weixin_29322553的博客 459

学习海康VisionMaster之表面缺陷滤波

本文介绍了VisionMaster中表面缺陷滤波技术的应用。该技术通过数学变换抑制背景干扰、增强缺陷特征,适用于电池铝壳、垫圈/螺丝等无纹理背景的表面缺陷检测(划痕、凹坑、异物等)。操作流程包括:图像导入、轮廓定位、位置修正、参数设置(重点讲解滤波核尺寸/数量/标准差等关键参数的调整策略)。文章通过案例演示了如何通过多方向滤波响应识别表面划伤,并指出需结合blob分析进一步优化检测结果。该技术对工业质检具有实用价值,参数设置需结合缺陷特征与背景特性灵活调整。

yuhouxiyang的专栏 2829

js原生的ajax请求,原生js实现ajax请求方法

这次给大家带来原生js实现ajax请求方法,原生js实现ajax请求方法的注意事项有哪些,下面就是实战案例,一起来看一下。上一篇文章写到原生js取代jquery的一些常用函数:原生js仿jquery一些常用方法,那么,ajax如何实现呢?如下是一个比较完整的ajax()function ajax(){var ajaxData = {type:arguments[0].type || "GET",u...

weixin_29585753的博客 579

手把手教你学simulink实例--基于Simulink的储能系统性能评估与仿真

储能系统是现代能源体系中的关键组成部分,广泛应用于可再生能源并网、电网调峰调频、电力质量改善以及电动汽车充电等领域。为了提高储能系统的运行效率和可靠性,对其性能进行准确评估至关重要。基于MATLAB/Simulink平台,可以构建储能系统的动态模型,并通过仿真分析其在不同工况下的性能表现。本项目旨在研究储能系统的建模方法、控制策略及其性能评估指标,并通过Simulink仿真验证系统的动态特性和稳态性能。

MHD0815的博客 195

原生js实现Ajax请求

可以参考w3chttps://www.w3school.com.cn/下的Ajax教程 1、创建一个jsp文件 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4....

神韵 273

掌握 Unity 中的状态机:综合指南

最后,将拥有一个由状态机驱动的功能齐全的播放器控制器,可以集成到自己的项目中。此外,状态机有助于实现复杂的人工智能、玩家控制、动画系统等,从而形成更强大、更灵活的游戏架构。状态机是计算机科学和游戏开发中的一个基本概念,它通过定义一组有限的状态及其之间的转换来模拟实体的行为。你可以定义常见的状态行为,例如 Enter、Update 和 Exit 方法,确保整个状态机架构的一致性和连贯性。由于前面提到的状态类扩展了 BaseState 类,因此我们可以为具有不同状态的不同对象创建单独的类。

yolo模型训练找我,AI游戏合作找我 1453

Unity 编辑器篇|(四)编辑器拓展GUI类 (全面总结 | 建议收藏)

GUI 类是 Unity GUI 的接口,并且具有手动定位功能。“即时模式”GUI 系统(也称为 IMGUI)是一个完全独立的功能系统,不同于 Unity 基于游戏对象的主 UI 系统。IMGUI 是一个代码驱动的 GUI 系统,主要用作程序员的工具。为了驱动该系统,需在实现脚本上调用 OnGUI 函数即时模式 GUI 系统常用于:创建游戏内调试显示和工具。为脚本组件创建自定义检视面板。创建新的编辑器窗口和工具以扩展 Unity 本身。

游戏开发小Y的博客 12万+

什么是AJAX如何使用原生JavaScript搭建AJAX请求

引言基本概念和作用说明什么是AJAX?AJAX的作用XMLHttpRequest对象使用原生JavaScript搭建AJAX请求示例一:GET请求获取JSON数据示例二:POST请求提交表单数据示例三:处理超时和错误示例四:上传文件示例五:跨域请求功能使用思路开发技巧分析AJAX并不是一种新的编程语言,而是一种用于创建快速动态网页的技术。它结合了多种技术,包括HTML、CSS、JavaScript、XMLHttpRequest对象以及服务器端脚本。

一个做过前端开发的产品经理,经历过睿智产品的折磨导致脱发之后,励志要翻身"农奴"把歌唱,一边打入敌人内部一边持续提升自己,为我们广大开发同胞谋福祉,坚决抵制睿智产品折磨我们码农兄弟! 1343

【ARFoundation自学04】AR Tracked Image 图像追踪识别与对应类的调用

1.添加组件 2.创建图像识别库 3.创建识别后追踪的物体(UI、模型等)

leoysq的博客 2560

原生JavaScript实现ajax异步请求代码

jQuery封装了JavaScript的一些常用方法,而jQuery中的$ajax(),$get(),$post()是比较常用的方法,也是大家最熟悉,最常用的,但是在面试时,通常面试官,会要求你手写原生ajax异步请求的代码,此时即便你的jquery学的再好,也是无济于事的。所以下面我将分享ajax异步请求的原生js代码,希望对你有所帮助。 1.XMLHttpRequest对象: XMLHtt

匪鉴 1万+

2026 最新安全 Skill 合集(CTF / 审计 / 渗透 / 红队)威胁建模一网打尽

2026年安全领域进入"Skill化"时代,各类安全能力被结构化封装为可复用的AI Skill。本文介绍了7个核心安全Skill项目:渗透测试全流程的AgentSkillsHub、CTF解题技能库ctfskills、多语言代码审计工具codeaudit、PHP专项审计系统、Java自动化审计流水线、威胁建模工具threatmodeling以及覆盖30+领域的Anthropic-Cybersecurity-Skills。这些项目将传统安全经验转化为标准化、可验证、可自动执行的模块化能力,支

Chengbei11的博客 1884

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

原生js实现AJAX请求,兼容ie

框架用多了,对原生js的遗忘了很多,但想要在这个行业走的远,基础是很重要的,最近都在努力务实自己的基础, 所以今天自己练手写了一个用原生js去写ajax请求的小demo。 首先我们需要知道ajax的完成请求有哪些步骤: 1、创建xmlHttpRequest对象 var xhr; if (window.xhrRequest) { // IE7+, Firefo...

前端攻城狮 935

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

原声ajax发送post请求,原生JS实现ajax 发送post请求

1. [代码]原生JS实现ajax 发送post请求var oStr = '';var postData = {};var oAjax = null;//post提交的数据postData = {"name1":"value1","name2":"value2"};//这里需要将json数据转成post能够进行提交的字符串 name1=value1&name2=value2格式postD...

weixin_42099755的博客 2864

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

原生js+请求ajax请求,原生JS写Ajax的请求函数功能

一般我们写网页的时候,如果用到 Ajax 请求服务器,都是使用 JQuery 等已经封装好的库来调用,比较简单。但是一般这些库的功能很多,引入了太多我们用不到的东西,如果我们需要写一个功能单一,简单的页面,完全用不到引用如此庞大的库文件。我们可以简单实现一个自己的 Ajax 请求功能,具体的代码如下:var ajax = {};ajax.x = function () {if (typeof XM...

weixin_42398050的博客 205

什么是AJAX?如何使用原生JavaScript搭建AJAX请求?

什么是AJAX?如何使用原生JavaScript搭建AJAX请求?

商务合作欢迎私信我 9612

原生Js Ajax请求和jQuery Ajax请求

一、原生Js Ajax请求 1、创建XMLHttpRequest异步对象 var xhr; //兼容处理 if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xhr = new XMLHttpRequest(); } else { // code for IE6, IE5 xhr = new ActiveXObject("Microsoft.XMLHTTP"); } 2、 设置回调函数(准备发送)

qq_45684708的博客 290

原生js与JQuery的ajax请求

原生js的ajax请求 1.创建XMLHttpRequest对象 var xhr=new XMLHttpRequest(); 2.准备发送请求 open() xhr.open('请求类型','url地址',是否异步); 参数 描述 请求类型 GET 或 POST url 文件在服务器上的地址 是否异步 true(异步) / false(同步) 3.发送请求数据 send() xhr.send(); 4.请求返回的回调函数 当页面的加载状态发生改变的时候readyState属

AK的博客 8573

js原生的ajax请求,原生 JS Ajax,GET和POST 请求实例代码

javascript/js的ajax的GET请求代码如下所示:/* 创建 XMLHttpRequest 对象 */var xmlHttp;function GetXmlHttpObject(){if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safarixmlhttp=new XMLHttpRequest()...

weixin_36027833的博客 535

js原生的ajax请求,Javascript封装的原生Ajax请求

由于工作需要长期使用Ajax,一个页面重复的AJAX请求太多,于是封装起来,只需要编写回调函数/*-------------使用方法:1.ajaxrequest()函数执行准备的参数(1.请求地址2.发送数据字符串拼接3.type值可选get/post4.回调函数名称)example:ajaxrequest('login.php','user=1&pass=2','post',dealwi...

weixin_34060773的博客 277
上一篇: 深拷贝和浅拷贝
下一篇: promise对象
yanner_
博客等级 码龄9年 39粉丝 168原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值