【发布时间】:2013-06-25 11:55:37
【问题描述】:
我正在尝试使用 JQuery 将一些数据传递给 Web 服务。这是一个简单的客户端:
<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'] 来访问输入数据吗?我做错了什么?
编辑:
我在$_POST['lang'] 中更改了$_GET['lang'],但还是不行。
【问题讨论】:
-
我很困惑。如果我使用
$_REQUEST['lang']它工作正常。但是$_POST['lang']仍然是相同的行为..
标签: php javascript jquery ajax web-services