今天就跟大家聊聊有關(guān)AJAX和Django如何獲取數(shù)據(jù),可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
創(chuàng)新互聯(lián)專注于西寧企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),商城系統(tǒng)網(wǎng)站開發(fā)。西寧網(wǎng)站建設(shè)公司,為西寧等地區(qū)提供建站服務(wù)。全流程按需策劃設(shè)計(jì),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)前言
使用Django服務(wù)網(wǎng)頁時,只要用戶執(zhí)行導(dǎo)致頁面更改的操作,即使該更改僅影響頁面的一小部分,它都會將完整的HTML模板傳遞給瀏覽器。 但是如果我們只想更新頁面的一部分,則不必完全重新渲染頁面-我們可以使用AJAX代替。
AJAX提供了一種將GET或POST請求發(fā)送到Django視圖并接收任何返回的數(shù)據(jù)而無需刷新頁面的方法。 現(xiàn)代JavaScript包含fetch API,該API為我們提供了一種純JavaScript方式來發(fā)送AJAX請求。
讓我們看一下如何通過獲取發(fā)出GET和POST請求,以在視圖和模板之間傳遞JSON數(shù)據(jù)。
GET請求
通過獲取發(fā)出GET請求
通過向其提供視圖的URL和適當(dāng)?shù)臉?biāo)頭來進(jìn)行帶有獲取的GET請求。 發(fā)出請求后,視圖返回請求的數(shù)據(jù),然后需要將響應(yīng)轉(zhuǎn)換為JSON,然后才能將其用于其他操作。
fetch(URL, { headers:{ 'Accept': 'application/json', 'X-Requested-With': 'XMLHttpRequest', //Necessary to work with request.is_ajax() }, }) .then(response => { return response.json() //Convert response to JSON }) .then(data => { //Perform actions with the response data from the view })