欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中發(fā)出HTTP請(qǐng)求最常用的方法

 更新時(shí)間:2018年07月12日 14:07:28   作者:新前端社區(qū)  
JavaScript具有很好的模塊和方法來發(fā)送可用于從服務(wù)器端資源發(fā)送或接收數(shù)據(jù)的HTTP請(qǐng)求。這篇文章主要介紹了JavaScript中發(fā)出HTTP請(qǐng)求最常用的方法,需要的朋友可以參考下

JavaScript具有很好的模塊和方法來發(fā)送可用于從服務(wù)器端資源發(fā)送或接收數(shù)據(jù)的HTTP請(qǐng)求。在本文中,我們將介紹一些在JavaScript中發(fā)出HTTP請(qǐng)求的流行方法。

Ajax

Ajax是發(fā)出異步HTTP請(qǐng)求的傳統(tǒng)方式??梢允褂肏TTP POST方法發(fā)送數(shù)據(jù),并使用HTTP GET方法接收數(shù)據(jù)。我們來看看發(fā)送GET請(qǐng)求。我將使用JSONPlaceholder,這是一個(gè)免費(fèi)的在線REST API,適用于以JSON格式返回隨機(jī)數(shù)據(jù)的開發(fā)人員。 要在Ajax中進(jìn)行HTTP調(diào)用,您需要初始化一個(gè)新XMLHttpRequest()方法,指定URL端點(diǎn)和HTTP方法(在本例中為GET)。最后,我們使用該open()方法將HTTP方法和URL端點(diǎn)綁定在一起,并調(diào)用該send()方法來觸發(fā)請(qǐng)求。 我們使用XMLHTTPRequest.onreadystatechange包含要在readystatechanged事件觸發(fā)時(shí)調(diào)用的事件處理程序的屬性將HTTP響應(yīng)記錄到控制臺(tái)。

 

如果您查看瀏覽器控制臺(tái),它將返回JSON格式的數(shù)據(jù)數(shù)組。但是我們?cè)趺粗勒?qǐng)求是否完成了?換句話說,我們?nèi)绾问褂肁jax處理響應(yīng)? 該onreadystatechange有兩個(gè)方法,readyState 和 status允許我們可以檢查請(qǐng)求的狀態(tài)。

 

如果readyState等于4,則表示請(qǐng)求已完成。 除了使用JavaScript直接進(jìn)行Ajax調(diào)用之外,還有其他更強(qiáng)大的HTTP調(diào)用方法,例如$.AjaxjQuery方法。

jQuery方法 jQuery有很多方法可以輕松處理HTTP請(qǐng)求。要使用這些方法,您需要在項(xiàng)目中包含jQuery庫(kù)。

$.ajax

jQuery Ajax是進(jìn)行HTTP調(diào)用的最簡(jiǎn)單方法之一。

 

$ .ajax方法需要許多參數(shù),其中一些是必需的,另一些是可選的。它包含兩個(gè)回調(diào)選項(xiàng)success并error處理收到的響應(yīng)。

$.get方法

$.get方法用于執(zhí)行GET請(qǐng)求。它需要兩個(gè)參數(shù):請(qǐng)求地址和回調(diào)函數(shù)。

 

$.post

該$.post方法是將數(shù)據(jù)發(fā)布到服務(wù)器的另一種方法。它需要三個(gè)參數(shù):請(qǐng)求的url地址您要發(fā)送的數(shù)據(jù)和回調(diào)函數(shù)。

 

$.getJson

該$.getJSON方法僅檢索JSON格式的數(shù)據(jù)。它需要兩個(gè)參數(shù):url和回調(diào)函數(shù)。

 

jQuery具有所有這些方法來請(qǐng)求或?qū)?shù)據(jù)發(fā)布到遠(yuǎn)程服務(wù)器。但實(shí)際上你可以將所有這些方法合而為一:$.ajax方法,如下例所示:

 

Fetch

fetch是一個(gè)新的功能強(qiáng)大的Web API,可以讓您發(fā)出異步請(qǐng)求。事實(shí)上,這fetch是制作HTTP請(qǐng)求的最佳和最喜歡的方式之一。它返回一個(gè)“Promise”,這是ES6的一大特色。 如果你不熟悉ES6,你可以閱讀一下關(guān)于ES6的文章。Promise允許我們以更智能的方式處理異步請(qǐng)求。我們來看看fetch技術(shù)如何運(yùn)作。

 

該fetch函數(shù)需要一個(gè)必需參數(shù):endpointURL。它還有其他可選參數(shù),如下例所示:

 

如您所見,fetch制作HTTP請(qǐng)求有許多優(yōu)點(diǎn)。此外,在fetch中還有其他模塊和插件,允許我們向服務(wù)器端發(fā)送和從服務(wù)器端接收請(qǐng)求,例如Axios.

Axios

Axios是一個(gè)用于發(fā)出HTTP請(qǐng)求的開源庫(kù),并提供許多強(qiáng)大的功能。我們來看看它是如何工作的。

用法: 首先,您需要包含Axios。有兩種方法可以在項(xiàng)目中包含Axios。 首先,你可以使用npm: npm install axios --save

然后你需要導(dǎo)入它 import axios from 'axios'

使用axios發(fā)出請(qǐng)求: 使用Axios,您可以使用GET和POST從服務(wù)器檢索和發(fā)布數(shù)據(jù)。

 

axios采用一個(gè)必需參數(shù),也可以采用第二個(gè)可選參數(shù)。這將一些數(shù)據(jù)作為簡(jiǎn)單查詢。

POST:

 

Axios返回“Promise”。如果您熟悉promises,您可能知道promise可以執(zhí)行多個(gè)請(qǐng)求。您可以使用axios執(zhí)行相同的操作并同時(shí)運(yùn)行多個(gè)請(qǐng)求。

Axios支持許多其他方法和選項(xiàng)。你可以官網(wǎng)了解他們

總結(jié)

以上所述是小編給大家介紹的JavaScript中發(fā)出HTTP請(qǐng)求最常用的方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • bootstrap table單元格新增行并編輯

    bootstrap table單元格新增行并編輯

    這篇文章主要為大家詳細(xì)介紹了bootstrap table單元格新增行并編輯的相關(guān)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • 微信小程序template模版的使用方法

    微信小程序template模版的使用方法

    這篇文章主要給大家介紹了關(guān)于微信小程序template模版的使用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用微信小程序具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • easyui-combobox 實(shí)現(xiàn)簡(jiǎn)單的自動(dòng)補(bǔ)全功能示例

    easyui-combobox 實(shí)現(xiàn)簡(jiǎn)單的自動(dòng)補(bǔ)全功能示例

    下面小編就為大家?guī)硪黄猠asyui-combobox 實(shí)現(xiàn)簡(jiǎn)單的自動(dòng)補(bǔ)全功能示例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧,
    2016-11-11
  • 探討跨域請(qǐng)求資源的幾種方式(總結(jié))

    探討跨域請(qǐng)求資源的幾種方式(總結(jié))

    這篇文章主要介紹了探討跨域請(qǐng)求資源的幾種方式(總結(jié)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-12-12
  • 基于Swiper實(shí)現(xiàn)移動(dòng)端頁(yè)面圖片輪播效果

    基于Swiper實(shí)現(xiàn)移動(dòng)端頁(yè)面圖片輪播效果

    這篇文章主要為大家詳細(xì)介紹了基于Swiper實(shí)現(xiàn)移動(dòng)端頁(yè)面圖片輪播效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • 淺談JavaScript中你可能不知道URL構(gòu)造函數(shù)的屬性

    淺談JavaScript中你可能不知道URL構(gòu)造函數(shù)的屬性

    這篇文章主要介紹了淺談JavaScript中你可能不知道URL構(gòu)造函數(shù)的屬性,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 淺談js函數(shù)的多種定義方法與區(qū)別

    淺談js函數(shù)的多種定義方法與區(qū)別

    下面小編就為大家?guī)硪黄獪\談js函數(shù)的多種定義方法與區(qū)別。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-11-11
  • JavaScript面試題(指針、帽子和女朋友)

    JavaScript面試題(指針、帽子和女朋友)

    本文小編給大家分享一道js面試題--指針、帽子和女朋友的題目,非常有意思,感興趣的朋友參考下吧
    2016-11-11
  • javascript document.compatMode兼容性

    javascript document.compatMode兼容性

    文檔模式在開發(fā)中貌似很少用到,最常見的是就是在獲取頁(yè)面寬高的時(shí)候,比如文檔寬高,可見區(qū)域?qū)捀叩取?/div> 2010-02-02
  • 前端使用JavaScript結(jié)合CSS實(shí)現(xiàn)3D旋轉(zhuǎn)跟隨鼠標(biāo)變化

    前端使用JavaScript結(jié)合CSS實(shí)現(xiàn)3D旋轉(zhuǎn)跟隨鼠標(biāo)變化

    這篇文章主要介紹了前端使用JavaScript結(jié)合CSS實(shí)現(xiàn)3D旋轉(zhuǎn)跟隨鼠標(biāo)變化,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2023-01-01

最新評(píng)論