要構造有效的 JSONP 請求,您需要做以下幾步:
創(chuàng)建一個包含回調函數(shù)的 URL:JSONP 是通過在請求 URL 中包含一個回調函數(shù)來實現(xiàn)的。您需要在請求 URL 的末尾添加一個參數(shù),例如 callback=yourCallbackFunction
。
創(chuàng)建一個回調函數(shù):在您的頁面中創(chuàng)建一個 JavaScript 函數(shù)來處理從服務器返回的數(shù)據(jù)。這個函數(shù)的名稱要和您在 URL 中設置的回調函數(shù)的名稱一樣。
發(fā)送請求:使用 JavaScript 中的 script
標簽來發(fā)送 JSONP 請求。將包含回調函數(shù)的 URL 設置為 src
屬性,并將該 script
標簽添加到頁面中。
處理響應:當服務器返回數(shù)據(jù)時,回調函數(shù)將被調用并傳遞返回的數(shù)據(jù)作為參數(shù)。您可以在回調函數(shù)中處理這些數(shù)據(jù)并更新頁面內容。
以下是一個簡單的 JSONP 請求的示例代碼:
<!DOCTYPE html>
<html>
<head>
<title>JSONP Example</title>
</head>
<body>
<div id="result"></div>
<script>
function handleResponse(data) {
document.getElementById("result").innerText = "Response from server: " + data;
}
function sendRequest() {
var script = document.createElement("script");
script.src = "https://api.example.com/data?callback=handleResponse";
document.body.appendChild(script);
}
sendRequest();
</script>
</body>
</html>
在這個示例中,當頁面加載時會發(fā)送一個 JSONP 請求到 https://api.example.com/data
,并指定了回調函數(shù) handleResponse
。當服務器返回數(shù)據(jù)時,handleResponse
函數(shù)會被調用來處理數(shù)據(jù)并更新頁面內容。