現(xiàn)在越來越多的網(wǎng)站使用json格式進(jìn)行數(shù)據(jù)的交互和傳輸。如果我們需要獲取json數(shù)據(jù),可以使用get方式進(jìn)行提交請(qǐng)求。下面是一個(gè)簡(jiǎn)單的示例,可以幫助我們了解如何使用get方式獲取json數(shù)據(jù)。
// 創(chuàng)建一個(gè)xmlhttprequest對(duì)象 var xhr = new XMLHttpRequest(); // 指定請(qǐng)求的地址和方法 xhr.open('GET', 'http://example.com/api/getData'); // 設(shè)置響應(yīng)數(shù)據(jù)的類型 xhr.responseType = 'json'; // 接收到響應(yīng)的時(shí)候執(zhí)行的回調(diào)函數(shù) xhr.onload = function() { if (xhr.status === 200) { console.log(xhr.response); } else { console.log('Request failed. Returned status of ' + xhr.status); } }; // 發(fā)送請(qǐng)求 xhr.send();
代碼解釋:
首先創(chuàng)建一個(gè)XMLHttpRequest對(duì)象,然后調(diào)用open方法,指定請(qǐng)求的地址和方法。在這個(gè)例子中,我們使用GET方法請(qǐng)求'http://example.com/api/getData'這個(gè)網(wǎng)址,指定響應(yīng)數(shù)據(jù)的類型為json。接著,當(dāng)獲取到響應(yīng)的時(shí)候執(zhí)行回調(diào)函數(shù),判斷請(qǐng)求的狀態(tài)碼是否為200,如果是,則輸出response的值,否則輸出請(qǐng)求失敗的狀態(tài)碼。
在這個(gè)例子中,我們使用了XMLHttpRequest對(duì)象的responseType屬性將響應(yīng)的數(shù)據(jù)類型設(shè)置為json。如果在請(qǐng)求中沒有設(shè)置這個(gè)屬性,那么響應(yīng)的數(shù)據(jù)類型就會(huì)是字符串,需要使用JSON.parse()方法將其轉(zhuǎn)換為json。
總的來說,使用get方式獲取json數(shù)據(jù)并不難,只需要注意在請(qǐng)求中設(shè)置請(qǐng)求的地址和方法、設(shè)置響應(yīng)的數(shù)據(jù)類型、以及處理響應(yīng)中的數(shù)據(jù)即可。