在前后端分離的開(kāi)發(fā)模式下,前端經(jīng)常需要通過(guò)get請(qǐng)求獲取后端返回的json字符串來(lái)進(jìn)行頁(yè)面數(shù)據(jù)渲染和交互操作。那么如何用代碼實(shí)現(xiàn)get請(qǐng)求json字符串的獲取呢?下面提供一個(gè)簡(jiǎn)單的示例:
//創(chuàng)建xmlhttprequest對(duì)象 var xmlhttp = new XMLHttpRequest(); //設(shè)置請(qǐng)求方式和請(qǐng)求地址 xmlhttp.open("GET","http://example.com/getJson",true); //設(shè)置請(qǐng)求頭 xmlhttp.setRequestHeader("Content-type","application/json"); //發(fā)送請(qǐng)求 xmlhttp.send(); //監(jiān)聽(tīng)請(qǐng)求狀態(tài)變化 xmlhttp.onreadystatechange = function(){ //判斷請(qǐng)求是否完成(狀態(tài)碼為4表示請(qǐng)求已完成) if(this.readyState == 4){ //判斷請(qǐng)求是否成功(狀態(tài)碼為200表示請(qǐng)求成功) if(this.status == 200){ //將成功返回的json字符串轉(zhuǎn)為json對(duì)象 var data = JSON.parse(this.responseText); //進(jìn)行后續(xù)操作,例如將數(shù)據(jù)渲染到頁(yè)面中 }else{ //請(qǐng)求失敗,進(jìn)行相應(yīng)的錯(cuò)誤處理 console.log("請(qǐng)求失敗,狀態(tài)碼為"+this.status); } } }
通過(guò)上述代碼,可以輕松實(shí)現(xiàn)get請(qǐng)求json字符串的獲取。其中,需要注意的是,請(qǐng)求地址應(yīng)當(dāng)替換為后端實(shí)際提供的接口地址,同時(shí)在請(qǐng)求頭中也需要根據(jù)實(shí)際情況設(shè)置對(duì)應(yīng)的Content-type。