返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >Ajax异步请求的五个步骤及实战案例
  • 592
分享到

Ajax异步请求的五个步骤及实战案例

摘要

目录前言1.建立xmlHttpRequest异步对象2.创建HTTP请求(设置请求方法和URL)3.发送数据4.设置回调函数5.在回调函数中对不同的响应状态进行处理案例实现总结前言

前言

ajax(Asynchronous javascript and XML):是指一种创建交互式网页应用的网页开发技术,通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这就意味着可以在不重新加载整个网页的情况下,对网页的局部进行更新。

1.建立xmlHttpRequest异步对象

 const xhr=new XMLHttpRequest();

2.创建HTTP请求(设置请求方法和URL)

//get方式
xhr.open('GET',URL);
 
//post方式发送数据,需要设置请求头
xhr.open('POST',URL);
xhr.setRequestHeader('Content-Type','application/x-www-fORM-urlencoded');

除了method和URL两个必选参数外还有三个可选参数:flag,name,passWord

flag:参数值为布尔类型,用于指定是否用异步方式。true表异步,false表同步,默认为true。

name:

3.发送数据

//get不需要传递参数
xhr.send(null);
 
//post必须有参数
xhr.send('a=100&b=200&c=300');

4.设置回调函数

xhr.onreadystatechange = callback;

5.在回调函数中对不同的响应状态进行处理

function callback() {
     //判断响应状态码
     if(xhr.readyState===4){
        // 判断交互是否成功
        if(xhr.status>=200&&xhr.status<300){
             // console.log(xhr.status);//状态码
             // console.log(xhr.statusText);//状态字符串
             // console.log(xhr.getAllResponseHeaders());//所有响应头
             // console.log(xhr.response);//响应体
 
             // 获取服务器响应的数据
             result.innerhtml=xhr.response;
        }else{
 
        }
    }
}

ajax中的readyState属性

  • 0:未初始化。尚未调用 open()方法。
  • 1:启动。已经调用 open()方法,但尚未调用 send()方法。
  • 2:发送。已经调用 send()方法,但尚未接收到响应。
  • 3:接收。已经接收到部分响应数据。
  • 4:完成。已经接收到全部响应数据,而且已经可以在客户端使用了。

只有在XMLHttpRequest对象完成了以上5个步骤之后,才可以获取从服务器端返回的数据。

ajax中的状态码(200-300则表示响应成功)

  • 400:请求参数错误
  • 401:无权限访问
  • 404:访问的资源不存在

案例实现

案例:获取天气信息

格式要求:使用HTML创建一个输入框,一个按钮,在输入框中输入文字后点击按钮,即可在下面打印未来15天的天气

输出要求:每个天气要求:城市名,温度,天气,风向,风力

api网站:(https://www.apishop.net/#/)

APIKEY:***************

使用 $.get( ) 获取:

var text = $('#text')
var btn = $('#button')
var div = $('#div1')
btn.click(function(){
    var city = text.val()
    var url = "https://api.apishop.net/common/weather/get15DaysWeatherByArea?apiKey=******="+ city

    $.get(url, function(response){
        console.log(response)
        var list = response.result.dayList;
        console.log(list)
        for(var i = 0; i < list.length; i++){
            div.append("<ul>")
            div.append("<li>" + list[i].area + "</li>")
            div.append("<li>" + list[i].day_air_temperature + "</li>")
            div.append("<li>" + list[i].day_weather + "</li>")
            div.append("<li>" + list[i].day_wind_direction + "</li>")
            div.append("<li>" + list[i].day_wind_power + "</li>")
            div.append("</ul>")
        }

    }, "JSON")
})

使用 $.post( ) 获取:

var text = $('#text')
var btn = $('#button')
var div = $('#div1')
btn.click(function(){
                var url = "https://api.apishop.net/common/weather/get15DaysWeatherByArea?apiKey=******&area="

                $.post(url,{
                    // 传入必须的参数
                    area:text.val()
                }, function(response){
                    console.log(response)
                    var list = response.result.dayList;
                    console.log(list)
                    for(var i = 0; i < list.length; i++){
                        div.append("<ul>")
                        div.append("<li>" + list[i].area + "</li>")
                        div.append("<li>" + list[i].day_air_temperature + "</li>")
                        div.append("<li>" + list[i].day_weather + "</li>")
                        div.append("<li>" + list[i].day_wind_direction + "</li>")
                        div.append("<li>" + list[i].day_wind_power + "</li>")
                        div.append("</ul>")
                    }

                }, "jsON")
            })

结果截图:

总结

到此这篇关于Ajax异步请求的五个步骤及实战案例的文章就介绍到这了,更多相关Ajax异步请求步骤内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Ajax异步请求的五个步骤及实战案例

本文链接: https://lsjlt.com/news/171377.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Ajax异步请求的五个步骤及实战案例
    目录前言1.建立xmlHttpRequest异步对象2.创建HTTP请求(设置请求方法和URL)3.发送数据4.设置回调函数5.在回调函数中对不同的响应状态进行处理案例实现总结前言 ...
    99+
    2022-11-13
    ajax请求异步执行顺序 ajax异步请求的代码 ajax如何实现异步请求
  • 一篇文章弄清楚Ajax请求的五个步骤
    目录一、定义1、什么是Ajax2、同步与异步的区别3、ajax的工作原理二、实现AJAX的基本步骤1、创建XMLHttpRequest对象2、创建HTTP请求3、设置响应HTTP请求...
    99+
    2024-04-02
  • Ajax异步请求JSon数据实例介绍
    这篇文章主要介绍“Ajax异步请求JSon数据实例介绍”,在日常操作中,相信很多人在Ajax异步请求JSon数据实例介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Ajax...
    99+
    2024-04-02
  • Ajax请求中异步与同步的示例分析
    这篇文章主要为大家展示了“Ajax请求中异步与同步的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Ajax请求中异步与同步的示例分析”这篇文章吧。 ...
    99+
    2024-04-02
  • ajax请求的步骤是什么
    Ajax请求的步骤如下:1. 创建XMLHttpRequest对象:通过`new XMLHttpRequest()`创建一个XMLH...
    99+
    2023-10-11
    ajax
  • 如何实现ajax发送异步请求
    这篇文章将为大家详细讲解有关如何实现ajax发送异步请求,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体内容如下第一步(得到XMLHttpRequest)ajax其实只...
    99+
    2024-04-02
  • Ajax如何实现异步请求技术
    这篇文章将为大家详细讲解有关Ajax如何实现异步请求技术,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。AJAX的全称是Asynchronous JavaScript an...
    99+
    2024-04-02
  • ajax如何实现异步请求刷新
    这篇文章给大家分享的是有关ajax如何实现异步请求刷新的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在网站刷新的方法中,ajax刷新是一种用户体验良好的刷新方式,在结合ssh等流...
    99+
    2024-04-02
  • AJAX中请求方式以及同步异步有什么区别
    这篇文章主要介绍AJAX中请求方式以及同步异步有什么区别,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 请求方式,分为GET与POST: GET 最为常...
    99+
    2024-04-02
  • Java Servlet异步请求开启的简单步骤
    目录1. 背景2. Servlet同步请求3. Servlet异步请求4. 异步Servlet使用方法5. Spring中的实现例子附:异步对象监听器总结1. 背景 在研究长轮询的实...
    99+
    2024-04-02
  • Ajax异步刷新功能及简单案例
    目录GET请求 POST请求 几个一会儿会用到的知识点:1、xmlhttp.readyState==4 && xmlhttp.status==200 2、针对IE6及...
    99+
    2024-04-02
  • servlet异步请求的实现
    目录1、什么是servlet异步请求2、Servlet异步请求示例2.1、示例准备2.2、实现自定义的Servlet2.3、异步任务2.4、测试场景1、什么是servlet异步请求 ...
    99+
    2024-04-02
  • jQuery中ajax请求struts action实现异步刷新的示例分析
    小编给大家分享一下jQuery中ajax请求struts action实现异步刷新的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!第一步:导入相关jar包,本样例需导入struts...
    99+
    2024-04-02
  • ajax的工作原理以及异步请求的封装方法
    本篇内容主要讲解“ajax的工作原理以及异步请求的封装方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ajax的工作原理以及异步请求的封装方法”吧! ...
    99+
    2024-04-02
  • ajax的工作原理以及异步请求的封装介绍
    Ajax原理: 客户端通过浏览器的内置对象XMLHttpRequest来发送异步请求,当服务器返回响应时,会调用先前注册的回调函数,在回调函数中可以使用javascript操作DOM...
    99+
    2022-11-15
    ajax工作原理 异步请求
  • Spring Boot异步请求和异步调用的示例分析
    这篇文章主要为大家展示了“Spring Boot异步请求和异步调用的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Spring Boot异步请求和异步调用的示例分析”这篇文章吧。一、Sp...
    99+
    2023-06-16
  • js fetch异步请求使用实例详解
    目录认识异步fetch(url)response.json()结合async和await异常处理post请求总结认识异步 首先我们得明白请求是一个异步的过程。 因为请求需要时间向服务...
    99+
    2024-04-02
  • AJAX乱码与异步同步以及封装jQuery库实现步骤详解
    目录1、AJAX乱码问题2、AJAX的异步与同步3、AJAX代码封装4、手动封装一个jQuery库1、AJAX乱码问题 (1)发送ajax get 或者 ajax post请求时下面...
    99+
    2023-01-13
    AJAX乱码 AJAX异步同步 AJAX封装jQuery库
  • Redux中进行异步操作(网络请求)的示例方案
    目录Redux中的异步操作组件中进行异步操作redux中进行异步操作Redux中的异步操作 在之前简单的案例中,redux中保存的counter是一个本地定义的数据 我们可以直接通过...
    99+
    2022-12-22
    Redux异步操作 Redux网络请求
  • jquery中的ajax异步上传实例
    这篇文章主要讲解了“jquery中的ajax异步上传实例”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“jquery中的ajax异步上传实例”吧!ajaxfi...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作