我在页面中有以下JavaScript代码。当进行ajax调用时,我可以看到浏览器检查/调试器部分抛出net :: ERR_EMPTY_RESPONSE错误。它在localhost环境中工作正常,但在生产中抛出以上错误。
在客户端代码中,
$(document).ready(function(){
$("#identityLinks a").on("click", function(){
value = $(this).attr("id");
if(value != "")
{
$.ajax({
url: "publish/updateUsersData.php",
type: "POST",
data: {receiverId: value},
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
dataType: "json",
success: function(data) {
//alert(data["result"]);
console.log(data["result"]);
},
error: function(xhr, textStatus, errorThrown) {
//alert(xhr +" "+ textStatus +" "+errorThrown);
console.log(xhr +" "+ textStatus);
}
});
}
});
在服务器端代码(PHP)中,我在updateUsersData.php中有以下代码:
header('Cache-Control: no-cache, must-revalidate');
header('Expires: Mon, 01 Jan 1996 00:00:00 GMT');
header('Content-type: application/json; charset=UTF-8');
if(isset($_POST["receiverId"]))
{
$receiver_id = trim($_POST["receiverId"]);
$arr = array("result"=>$receiver_id);
echo json_encode($arr); die();
break;
}
else
{
$arr = array("result"=>"No user data received. Error!");
echo json_encode($arr); die();
break;
}
?>
你认为这是由于标题与过期调用或Jquery 1.9.1版本中的错误?我没有找到这样的错误,当我们以前的版本。此外,此代码没有更新5个月,浏览器错误爬行只是前一段时间。感谢您的帮助和支持。
编辑:
状态:到目前为止,此问题尚未解决。 Jquery AJAX专家的帮助需要。任何人,请提出这个问题。此外,CORS不负责这个问题。
当点击发生上述错误的控制台时,我被直接带到这行
JQuery 1.9.1 where console error lines point to:
=> xhr.send( ( s.hasContent && s.data ) || null );
Also these ones are shown in console error mark:
=> transport.send( requestHeaders, done );
=> ret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle
|| handleObj.handler )
.apply( matched.elem, args );
=> return typeof jQuery !== core_strundefined &&
(!e || jQuery.event.triggered !== e.type) ?
jQuery.event.dispatch.apply( eventHandle.elem, arguments ) : undefined;
是jquery最新版本负责此PROVISIONAL HEADERS ARE SHOWN错误。