我想處理JSONP請求中返回的數據,但我很難進行調用。爲什麼下面的代碼失敗?JQuery AJAX調用返回JSONP,但無法訪問JSON數據
HTML文件:
<!DOCTYPE html>
<html>
<head>
<title>Simple JSONP Test</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="lib/jquery.js"></script>
</head>
<body>
<div>Simple JSONP Test</div>
<script>
// alert('start');
$.ajax({
contentType: "application/json; charset=utf-8",
url: "http://www.myserver.com/simplejsontest.php",
dataType: "jsonp",
success: function (data, textStatus, jqXHR) {
alert('Success! data: ' + data);
},
error: function (xr, msg, e) { alert('Msg: ' + msg + ', error: ' + e + 'xr: ' + xr.toString()); }
});
</script>
</body>
</html>
和PHP文件simplejsontest.php:
<?php
$myData = array(
//array(
"id" => "1",
"Title" => "Dr.",
"firstName" => "John",
"lastName" => "King");
/*,
array(
"id" => 2,
"Title" => "Dr.",
"firstName" => "John",
"lastName" => "King")
);
*/
//echo $_GET['callback']."(".'{"users":'.json_encode($myData).'})';
echo $_GET['callback']."(". json_encode($myData). ')';
?>
請解釋什麼是「無法訪問JSON數據」的意思;你有錯誤信息嗎? – 2014-12-04 22:28:00
'$ _GET ['callback']'的值是多少?另外,Ajax調用的結果是什麼?成功還是錯誤? – Dim13i 2014-12-04 23:01:02
'contentType:「application/json; charset = utf-8」,' - 你正在做一個GET請求,沒有請求主體來描述內容類型。 – Quentin 2014-12-04 23:27:37