我正尝试将一些数据传递给使用JQuery的Web服务。下面是一个简单的客户端:将数据传递给json/php网络服务
<script type="text/javascript">
$(function() {
$.ajax({
type: "POST",
url: "webservices/gammeList.php?lang=fr",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: onSuccess,
error: onError
});
});
function onError(result) {
alert("error");
}
function onSuccess(result){
alert(JSON.stringify(result));
}
</script>
和一个简单的服务器:
<?php
if (isset($_GET['lang']) && !empty($_GET['lang'])) {
$lang = $_GET['lang'];
} else {
$lang = "en";
}
echo (json_encode($lang));
?>
它工作正常,但我想通过使用数据设定这样的数据:
$(function() {
$.ajax({
type: "POST",
url: "webservices/gammeList.php",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: {lang: "fr"},
success: onSuccess,
error: onError
});
});
我总是从网络服务获得“en”作为响应。那么在这里,我应该使用相同的方法$_GET['lang']
来访问输入数据吗?我究竟做错了什么?
编辑: 我改变了$_GET['lang']
在$_POST['lang']
但仍然不起作用。
use'$ _POST ['lang']' – bystwn22
我很困惑。 如果我使用'$ _REQUEST ['lang']'它可以正常工作。但是用'$ _POST ['lang']'仍然是一样的行为。 – leochab