在 Web 開發(fā)中,常用的 HTTP 請求方式有 GET 和 POST 等。其中,GET 請求方式通常用于向服務器請求數(shù)據(jù),而且請求的數(shù)據(jù)通常是以 JSON 格式返回的。下面我們來介紹一下如何使用 GET 請求方式向服務器發(fā)送 JSON 數(shù)據(jù)。
var xhr = new XMLHttpRequest(); var url = "http://example.com/data"; xhr.open("GET", url, true); xhr.setRequestHeader("Content-Type", "application/json"); xhr.onreadystatechange = function() { if (xhr.readyState === 4 && xhr.status === 200) { var json = JSON.parse(xhr.responseText); console.log(json); } }; xhr.send();
上述代碼中,我們創(chuàng)建了一個 XMLHttpRequest 對象,用于向服務器發(fā)送 HTTP 請求。在調(diào)用 open() 方法時,我們將請求方式設(shè)置為 GET,并指定要請求的 URL 地址。在發(fā)送請求之前,我們需要將請求頭中的 Content-Type 設(shè)置為 application/json,這樣服務器才知道我們期望接收 JSON 格式的數(shù)據(jù)。在發(fā)送請求后,我們使用 onreadystatechange 事件來監(jiān)聽服務器的響應結(jié)果。當 readyState 的值為 4,表示服務器已經(jīng)響應完畢,并且響應狀態(tài)碼為 200 時,我們可以得到服務器返回的 JSON 數(shù)據(jù)。
小結(jié)一下,在使用 GET 請求方式向服務器請求 JSON 數(shù)據(jù)時,我們需要做以下幾個步驟:
- 創(chuàng)建一個 XMLHttpRequest 對象
- 調(diào)用 open() 方法設(shè)置請求方式和 URL 地址
- 在發(fā)送請求之前,設(shè)置請求頭的 Content-Type 為 application/json
- 使用 onreadystatechange 事件監(jiān)聽服務器的響應結(jié)果
- 在得到服務器返回的數(shù)據(jù)后,通過 JSON.parse() 方法將 JSON 數(shù)據(jù)轉(zhuǎn)成 JavaScript 對象