我正面臨一個奇怪的問題。考慮我有一個Ajax電話,PHP阻止代碼,在Zend服務器中也阻止下一個Ajax調用的響應
$.ajax({
url:"url1.php",
})
這個Ajax調用我有一個第二Ajax調用作爲後,
$.ajax({
url:"url2.php",
success:function(data){console.log(data);}
})
url1.php如下;
$sql="SELECT * from db/tbl";
echo $sql;
$_SESSION["filename"]=$time;
$_SESSION["detail-status"]="Data fetching will start";
$_SESSION["status"]="starting";
if (!($stmt = db2_exec($this->db2conn, $sql, array('CURSOR' => DB2_SCROLLABLE))))
{
echo $sql."<b>Error ".db2_stmt_error() .":".db2_stmt_errormsg(). "</b>";
die;
}
while ($row = db2_fetch_assoc($stmt))
{
//........
}
url2.php如下;
<?php
session_start();
echo "hello world";
?>
現在我在URL1阻擋代碼(即從取分貝巨大量的數據[IBM DB2])。現在的問題是,我沒有得到任何迴應,從url2在第二個Ajax調用,直到我的第一個Ajax調用完成。 在顯示第二個Ajax調用狀態的Chrome網絡選項卡中,正在等待。在後端服務器是Zend服務器,我沒有任何訪問權限。
您能否介紹一下,爲什麼會發生這種情況?
如果您需要更多信息請提。
https://developers.google.com/web/fundamentals/getting-started/primers/promises –
這是什麼?你讀過我問過的嗎? –
對不起,我的錯。這些是會話鎖。只要谷歌,開始你的旅程;)如果你可以分享更多的上下文,也許我能夠解釋一些概念和幫助。 –