JavaScript中发出HTTP请求最常用的方法


Posted in Javascript onJuly 12, 2018

JavaScript具有很好的模块和方法来发送可用于从服务器端资源发送或接收数据的HTTP请求。在本文中,我们将介绍一些在JavaScript中发出HTTP请求的流行方法。

Ajax

Ajax是发出异步HTTP请求的传统方式。可以使用HTTP POST方法发送数据,并使用HTTP GET方法接收数据。我们来看看发送GET请求。我将使用JSONPlaceholder,这是一个免费的在线REST API,适用于以JSON格式返回随机数据的开发人员。 要在Ajax中进行HTTP调用,您需要初始化一个新XMLHttpRequest()方法,指定URL端点和HTTP方法(在本例中为GET)。最后,我们使用该open()方法将HTTP方法和URL端点绑定在一起,并调用该send()方法来触发请求。 我们使用XMLHTTPRequest.onreadystatechange包含要在readystatechanged事件触发时调用的事件处理程序的属性将HTTP响应记录到控制台。

JavaScript中发出HTTP请求最常用的方法 

如果您查看浏览器控制台,它将返回JSON格式的数据数组。但是我们怎么知道请求是否完成了?换句话说,我们如何使用Ajax处理响应? 该onreadystatechange有两个方法,readyState 和 status允许我们可以检查请求的状态。

JavaScript中发出HTTP请求最常用的方法 

如果readyState等于4,则表示请求已完成。 除了使用JavaScript直接进行Ajax调用之外,还有其他更强大的HTTP调用方法,例如$.AjaxjQuery方法。

jQuery方法 jQuery有很多方法可以轻松处理HTTP请求。要使用这些方法,您需要在项目中包含jQuery库。

$.ajax

jQuery Ajax是进行HTTP调用的最简单方法之一。

JavaScript中发出HTTP请求最常用的方法 

$ .ajax方法需要许多参数,其中一些是必需的,另一些是可选的。它包含两个回调选项success并error处理收到的响应。

$.get方法

$.get方法用于执行GET请求。它需要两个参数:请求地址和回调函数。

JavaScript中发出HTTP请求最常用的方法 

$.post

该$.post方法是将数据发布到服务器的另一种方法。它需要三个参数:请求的url地址您要发送的数据和回调函数。

JavaScript中发出HTTP请求最常用的方法 

$.getJson

该$.getJSON方法仅检索JSON格式的数据。它需要两个参数:url和回调函数。

JavaScript中发出HTTP请求最常用的方法 

jQuery具有所有这些方法来请求或将数据发布到远程服务器。但实际上你可以将所有这些方法合而为一:$.ajax方法,如下例所示:

JavaScript中发出HTTP请求最常用的方法 

Fetch

fetch是一个新的功能强大的Web API,可以让您发出异步请求。事实上,这fetch是制作HTTP请求的最佳和最喜欢的方式之一。它返回一个“Promise”,这是ES6的一大特色。 如果你不熟悉ES6,你可以阅读一下关于ES6的文章。Promise允许我们以更智能的方式处理异步请求。我们来看看fetch技术如何运作。

JavaScript中发出HTTP请求最常用的方法 

该fetch函数需要一个必需参数:endpointURL。它还有其他可选参数,如下例所示:

JavaScript中发出HTTP请求最常用的方法 

如您所见,fetch制作HTTP请求有许多优点。此外,在fetch中还有其他模块和插件,允许我们向服务器端发送和从服务器端接收请求,例如Axios.

Axios

Axios是一个用于发出HTTP请求的开源库,并提供许多强大的功能。我们来看看它是如何工作的。

用法: 首先,您需要包含Axios。有两种方法可以在项目中包含Axios。 首先,你可以使用npm: npm install axios --save

然后你需要导入它 import axios from 'axios'

使用axios发出请求: 使用Axios,您可以使用GET和POST从服务器检索和发布数据。

JavaScript中发出HTTP请求最常用的方法 

axios采用一个必需参数,也可以采用第二个可选参数。这将一些数据作为简单查询。

POST:

JavaScript中发出HTTP请求最常用的方法 

Axios返回“Promise”。如果您熟悉promises,您可能知道promise可以执行多个请求。您可以使用axios执行相同的操作并同时运行多个请求。

Axios支持许多其他方法和选项。你可以官网了解他们

总结

以上所述是小编给大家介绍的JavaScript中发出HTTP请求最常用的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Javascript 类与静态类的实现
Apr 01 Javascript
jquery easyui使用心得
Jul 07 Javascript
javascript实现显示和隐藏div方法汇总
Aug 14 Javascript
Javascript中函数名.length属性用法分析(对比arguments.length)
Sep 16 Javascript
jQuery easyui刷新当前tabs的方法
Sep 23 Javascript
AngularJS的ng Http Request与response格式转换方法
Nov 07 Javascript
详解AngularJS controller调用factory
May 19 Javascript
详解vue-cil和webpack中本地静态图片的路径问题解决方案
Sep 27 Javascript
让bootstrap的carousel支持滑动滚屏的实现代码
Nov 27 Javascript
使用vue-aplayer插件时出现的问题的解决
Mar 02 Javascript
JS实现的缓冲运动效果示例
Apr 30 Javascript
通过vue.extend实现消息提示弹框的方法记录
Jan 07 Vue.js
vue实现引入本地json的方法分析
Jul 12 #Javascript
jQuery实现checkbox全选功能完整实例
Jul 12 #jQuery
JS实现将二维数组转为json格式字符串操作示例
Jul 12 #Javascript
vue路由组件按需加载的几种方法小结
Jul 12 #Javascript
js与jQuery实现获取table中的数据并拼成json字符串操作示例
Jul 12 #jQuery
使用json-server简单完成CRUD模拟后台数据的方法
Jul 12 #Javascript
教你如何用node连接redis的示例代码
Jul 12 #Javascript
You might like
也谈 PHP 和 MYSQL
2006/10/09 PHP
PHP判断远程图片或文件是否存在的实现代码
2014/02/20 PHP
php计算指定目录下文件占用空间的方法
2015/03/13 PHP
PHP时间和日期函数详解
2015/05/08 PHP
thinkPHP5框架分页样式类完整示例
2018/09/01 PHP
PHP里的$_GET数组介绍
2019/03/22 PHP
Ext.MessageBox工具类简介
2009/12/10 Javascript
Javascript 面向对象 对象(Object)
2010/05/13 Javascript
jquery 多级下拉菜单核心代码
2010/05/21 Javascript
使用jquery制作弹出框效果
2015/04/03 Javascript
浅析jQuery Mobile的初始化事件
2015/12/03 Javascript
基于JavaScript实现右键菜单和拖拽功能
2016/11/28 Javascript
Bootstrap基本组件学习笔记之导航(10)
2016/12/07 Javascript
微信小程序自定义音乐进度条的实例代码
2018/08/28 Javascript
jQuery实现基本淡入淡出效果的方法详解
2018/09/05 jQuery
详解react阻止无效重渲染的多种方式
2018/12/11 Javascript
了解JavaScript中let语句
2019/05/30 Javascript
Vue 中 a标签上href无法跳转的解决方式
2019/11/12 Javascript
浅谈vue中document.getElementById()拿到的是原值的问题
2020/07/26 Javascript
[00:55]深扒TI7聊天轮盘语音出处3
2017/05/11 DOTA
[01:05:07]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第一场2月1日
2021/03/11 DOTA
python读取csv文件示例(python操作csv)
2014/03/11 Python
python对json的相关操作实例详解
2017/01/04 Python
快速了解Python开发中的cookie及简单代码示例
2018/01/17 Python
pygame游戏之旅 添加icon和bgm音效的方法
2018/11/21 Python
运用PyTorch动手搭建一个共享单车预测器
2019/08/06 Python
Django之PopUp的具体实现方法
2019/08/31 Python
python实现代码统计程序
2019/09/19 Python
python实现异常信息堆栈输出到日志文件
2019/12/26 Python
Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
2021/03/04 Python
戴尔加拿大官网:Dell加拿大
2016/09/17 全球购物
施华洛世奇韩国官网:SWAROVSKI韩国
2018/06/05 全球购物
英国领先的在线高尔夫商店:Gamola Golf
2019/11/16 全球购物
CSS3鼠标悬浮过渡缩放效果
2021/04/17 HTML / CSS
python之PySide2安装使用及QT Designer UI设计案例教程
2021/07/26 Python
MutationObserver在页面水印实现起到的作用详解
2022/07/07 Javascript