我正在尝试构建一个大量利用 JSON 进行数据访问的 HTML5 应用程序。在某些情况下,我想使用 getJSON 对象(使用 JavaScript 和 JQuery)将 JSON 对象发布到 PHP 页面。然后,该 PHP 页面将抓取 JSON 对象,执行一些业务逻辑,然后将单独的 JSON 对象返回给调用页面。
我可以获得返回到调用页面的有效 JSON 对象,但我似乎无法获取在原始请求中传递的 JSON 对象。我已经尝试过 $_GET、$_POST 和其他几个选项。一切都无济于事。
这是我在原始页面上的代码。这非常简单——当用户单击按钮时,我们会执行 AJAX 调用,将 JSON 对象传递给名为 receive_jason.php 的页面。该页面应该评估传入的 JSON 对象并将另一个 JSON 对象返回到原始页面。
第 1 页:
<html lang="en">
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
</head>
<script type="text/javascript">
function StartPost()
{
var strJSON = '{"id":"3","artist":"The Beatles","alblum":"White Alblum"}';
var jsonURL = "receive_json.php";
$.getJSON( jsonURL,
strJSON,
function(data) {
var items = [];
responseMsg = data["success"];
alert(responseMsg);
});
}
</script>
<body>
<input type="button" name="Post Data" value="Post Data" onClick="StartPost();">
</body>
</html>
这是receive_json.php页面上的PHP代码......
<?php
$incomingData = $_GET['artist'];
$myText =(string) $incomingData;
echo "{\"success\":\"" . strlen($myText) . "\"}";
?>
需要明确的是,getJSON 调用有效,并且我在返回时确实收到了有效的 JSON 调用。但我无法访问我传入的 JSON 对象。
我的问题......
1)这只是一个我可以修复的简单语法错误吗?
2) getJSON 甚至是这项任务的正确功能吗?
3) 有没有一种简单的方法可以让我调试 getJSON 请求,以便我可以看到页面上发生了什么?