问题
包含任何数据库查询的每个AJAX请求都比平常花费更多时间.
我一周以来没有更新代码库,但突然之间在AJAX请求中完成的所有数据库查询都花费了大量时间.这里要注意的一个事情是,如果查询是写在一个页面,然后在页面正常加载一样,如果你访问:www.example.com/mypage.php,
mypage.php:
<?php
$query = $db_handler->prepare(
"SELECT * FROM table_x LIMIT 5"
);
$query->execute();
$fetch = $query->fetchAll(PDO::FETCH_ASSOC);
?>
Run Code Online (Sandbox Code Playgroud)
所有结果都很快加载页面.
但如果它在AJAX的响应文件中完成,则需要花费大量时间(比如15秒)才能加载
客户端的AJAX代码:
$.ajax
({
url: 'server_files/ajaxtest.php',
type: 'POST',
dataType: 'JSON',
data:
{
data: 'some data'
},
success: function(data)
{
if( data.success === true )
{
}
else if( data.success === false )
{
}
},
error: function(e)
{
alert('Error');
}
});
Run Code Online (Sandbox Code Playgroud)
ajax_response.php:
<?php
header('Content-Type: application/json');
if( isset($_POST['data']) )
{
$query = $db_handler->prepare(
"SELECT * FROM table_x …Run Code Online (Sandbox Code Playgroud)