首页
学习
活动
专区
圈层
工具
发布

JavaScript手写实现AJAX请求以及使用Promise封装AJAX请求

AJAX概念 AJAX是 Asynchronous JavaScript and XML 的缩写,指的是通过 JavaScript 的 异步通信,从服务器 获取 XML 文档从中提取数据,再更新当前网...实现步骤 创建一个XMLHttpRequest对象 在这个对象上使用open()方法创建一个http请求,open方法所需要的参数是请求的方法,请求的地址,是否异步和用户的认证信息。...当对象的readyState变为4的时候,代表服务器返回的数据接收完成,这个时候可以通过判断请求的状态,如果状态是2xx或304的话就代表返回正常。...这个时候就可以通过response中的数据对页面进行更新了。 当对象的属性和监听函数 设置完成后,最后调用sent()方法来向服务器发起请求,可以传入参数作为发送的数据体。...='json'; xhr.setRequestHeader("Accept","application/json"); //发送HTTP请求 xhr.send(null); 使用Promise封装 function

1.6K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ajax跨域请求json数据

    ajax跨域请求json数据 作者:matrix 被围观: 5,840 次 发布时间:2014-03-13 分类:零零星星 | 20 条评论 » 这是一个创建于 3094 天前的主题,其中的信息可能已经有所发展或是发生改变...刚开始仅仅想获取一个他域的json数据,没想到牵扯到很多的问题。...ajax的跨域问题导致: 也就是ajax同源策略(同源是指域名,协议,端口相同)。...跨域可以实现在自己的网站之间传递数据。但是如果你想用“跨域”盗取其它网站的数据,那还是放弃吧。除非目标网站有给你提供JSONP的接口,或者有某些可以利用的漏洞,要不然真没什么办法实现。...利用jsonp跨域 要跨域必须要有回调函数的接口,这里用jsonp试试 接口 ajax.load( url, // 跨越请求的URL success, // 回调函数,必须定义一个形参,用于接收后台返回的全局变量

    2K30

    PrestaShop 网站漏洞修复如何修复

    PrestaShop网站的漏洞越来越多,该网站系统是很多外贸网站在使用的一个开源系统,从之前的1.0初始版本到现在的1.7版本,经历了多次的升级,系统使用的人也越来越多,国内使用该系统的外贸公司也很多,...这次发现的PrestaShop漏洞,是远程代码注入漏洞,漏洞产生的代码如下在后台的admin-dev目录下filemanager文件里的ajax_calls.php代码,这个远程的注入漏洞是后台处理上传文件的功能导致的...,我们来演示一下,首先搭建一台linux服务器,并搭建好apache+mysql数据库的环境,拷贝PrestaShop代码到服务器中,进行安装,并调试可以打开。...action=rename_folder,post的方式进行提交,发送数据到这个文件代码里,利用PHP的反序列化就可以自动的解析代码,达到远程代码注入执行的效果。...PrestaShop网站漏洞修复与办法 升级PrestaShop的版本到最新版本,设置php.ini的解析功能为off具体是phar.readonly=off,这里设置为关闭,对网站的上传功能加强安全过滤

    5.9K10

    PrestaShop 网站漏洞修复如何修复

    PrestaShop网站的漏洞越来越多,该网站系统是很多外贸网站在使用的一个开源系统,从之前的1.0初始版本到现在的1.7版本,经历了多次的升级,系统使用的人也越来越多,国内使用该系统的外贸公司也很多,...这次发现的PrestaShop漏洞,是远程代码注入漏洞,漏洞产生的代码如下在后台的admin-dev目录下filemanager文件里的ajax_calls.php代码,这个远程的注入漏洞是后台处理上传文件的功能导致的...,我们来演示一下,首先搭建一台linux服务器,并搭建好apache+mysql数据库的环境,拷贝PrestaShop代码到服务器中,进行安装,并调试可以打开。...action=rename_folder,post的方式进行提交,发送数据到这个文件代码里,利用PHP的反序列化就可以自动的解析代码,达到远程代码注入执行的效果。...PrestaShop网站漏洞修复与办法 升级PrestaShop的版本到最新版本,设置php.ini的解析功能为off具体是phar.readonly=off,这里设置为关闭,对网站的上传功能加强安全过滤

    5.9K20

    Django 中使用 ajax 请求的正确姿势

    首先,在使用 ajax 之前需要说一下这个前端库的定义,以下描述是我觉得比较简单明了的解释(本文提到的 ajax 仅指 jQuery AJAX): AJAX 是一种与服务器交换数据的技术,可以在不重新载入整个页面的情况下更新网页的一部分...设置一些默认的参数,简单理解就是在这个里面设置的参数,之后使用 ajax 的时候都会自动添加到请求中,比如可以设置请求头、传入参数等,而我这里是固定设置一个 csrfmiddlewaretoken 参数...小结:我对于使用 ajax 函数的理解思路比较简单,第一步是提取表单或者页面的标签中参数,然后处理和判断参数,当参数合法的时候开始执行请求,请求之前可以设置一下 csrfmiddlewaretoken...总结 django 结合 jQuery 的 AJAX 可以做到前后端数据传递,利用 ajax 的特性可以在不更新当前 URL 的基础上面做到数据库传递,从而到达只更新部分 HTML 的效果。...在 Django 提供接口给 ajax 的时候最好做到严格按照不同的返回码返回不同的信息 ajax 在请求接口完成之后,可以根据返回码的判断来执行不同的事件 比较耗时的请求可以使用缓存 版权声明:如无特殊说明

    2.5K10

    在 JS 中如何使用 Ajax 来进行请求

    在本教程中,我们将学习如何使用 JS 进行AJAX调用。 1.AJAX 术语AJAX 表示 异步的 JavaScript 和 XML。 AJAX 在 JS 中用于发出异步网络请求来获取资源。...有多种方法可以发出网络请求并从服务器获取数据。 我们将一一介绍。 2.XMLHttpRequest XMLHttpRequest对象(简称XHR)在较早的时候用于从服务器异步检索数据。...之所以使用XML,是因为它首先用于检索XML数据。现在,它也可以用来检索JSON, HTML或纯文本。...我们需要另外使用setRequestHeader设置请求标头“Content-Type” ,并使用send方法中的JSON.stringify将JSON正文作为字符串发送。...2.3 XMLHttpRequest vs Fetch 早期的开发人员,已经使用了好多年的 XMLHttpRequest来请求数据了。

    12.5K20
    领券