Javascript ajax调用中的数据是如何计数的?
我将使用AJAX作为分页脚本,并希望使该脚本尽可能“节省数据消耗”。因此,我的想法是只加载所选页面的项目,只加载所有未显示项目的数据id为空的li项目 问题是,如果ajax调用的php文件正在处理所有数据,那么这是否真的节省了数据消耗 我想问题是;数据是否计入ajax响应中有多少内容,或者是否计入对php文件的ajax调用有多大 我是通过将大量li项留空来保存数据,还是可以添加内容,因为它已加载到ajax调用中 有人明白我的意思吗 人们总是想要代码示例:Javascript ajax调用中的数据是如何计数的?,javascript,php,ajax,Javascript,Php,Ajax,我将使用AJAX作为分页脚本,并希望使该脚本尽可能“节省数据消耗”。因此,我的想法是只加载所选页面的项目,只加载所有未显示项目的数据id为空的li项目 问题是,如果ajax调用的php文件正在处理所有数据,那么这是否真的节省了数据消耗 我想问题是;数据是否计入ajax响应中有多少内容,或者是否计入对php文件的ajax调用有多大 我是通过将大量li项留空来保存数据,还是可以添加内容,因为它已加载到ajax调用中 有人明白我的意思吗 人们总是想要代码示例: jQuery.post(ajaxurl,
jQuery.post(ajaxurl, 'action=load_items', function(response)
{
// Is it the action 'action=load_items'
// that consumes data? Or is it the amount
// of data coming out in the response?
});
我想您应该尽量减少客户(访问网站的客户)消耗的数据(例如,由于手机上的小数据计划)。这是正确的吗 如果是这样,您需要考虑从您的网站实际发送给客户的内容。PHP脚本
echo
s包含一些数据,只有这些数据才会传输到客户端。因此,您在计算过程中实际读取的内容(以及保存在服务器内存中的内容)与此无关。它与您实际输出和发送给客户的内容相关
也就是说,您可以优化脚本的输出。首先,应该启用GZIP。这样可以保存最多的数据,而且每个浏览器都能理解它。在PHP中,这非常简单(请参阅)。只需添加ob_start(“ob_gzhandler”)代码>在输出之前
其次,应该缩小发送回客户端的JSON。只需使用默认函数json\u encode()
即可完成此操作。这将删除JSON中所有不必要的空白
如果现在只发送数据块而不是整个数据集,那么这可能是最节省数据的方法。请记住,总有一个HTTP头也需要传输。因此,如果您想优化数据消耗,就不要制作太小的数据包(理想情况下,您发送的正是普通用户希望在一个包中看到的内容)
您可以在Google Chrome的开发工具的网络选项卡中跟踪您网站的数据消耗(我相信这在其他浏览器中也可用)。这里列出了每个Ajax调用及其大小(您可以使用XHR进行过滤)。我不明白您的意思。你有没有真实的例子,用代码演示你的问题()?不要有空的位。。。使用json,然后根据响应使用js构建dom,这将是“最轻”的数据消耗,在服务器上使用gzip也将减少数据消耗,尽管很难知道数据消耗的含义。:)但是我需要这些空的位来让javascript知道加载的项目在哪个页面上。我的问题是:;什么决定了消耗了多少数据?是1号吗。取决于ajax调用中php文件的负载有多重?或者是2。这取决于ajax响应中出现了多少数据?目前还不清楚。什么东西重?这一切背后的真正问题是什么?我只是想尽量减少脚本消耗的数据量。