JSONP是一種解決跨域請求的常用技術。它通過動態創建script標簽,將需要獲取的數據以函數參數的形式傳遞到一個指定的回調函數中。
返回類型一般是JSON格式的數據,因為JSONP是JSON with Padding的縮寫。但實際上,返回類型并不一定要是JSON格式的數據。
JSONP回調函數中可以處理任何類型的數據,只要返回的數據可以被JavaScript解析。比如,返回的數據可以是HTML、XML,甚至是文本數據。
//返回HTML格式的數據 jQuery.ajax({ url: "http://example.com/api", dataType: "jsonp", success: function(response) { jQuery("#result").html(response); } }); //返回文本形式的數據 jQuery.ajax({ url: "http://example.com/api", dataType: "jsonp", success: function(response) { jQuery("#result").text(response); } });
需要注意的是,返回的數據類型必須與回調函數的處理方式相匹配。如果返回的是HTML格式的數據,那么回調函數要使用html()方法來處理;如果返回的是文本數據,那么回調函數要使用text()方法來處理。