gpt4 book ai didi

javascript - 使用 AJAX 加载 PHP 文件与 HTML 文件?

转载 作者:行者123 更新时间:2023-11-28 20:07:06 32 4
gpt4 key购买 nike

这样做是否更好:

//PHP FILE:
<html>
<body>
hi
<?php
//load first 50 comments from mysql
?>
</body>
</html>

或者这个:

//HTML FILE
<html>
<body>
hi
<div id="hello">
</body>
</html>

//JS file:
$(document).load(function() { //or whatever it is if not 'load', I can figure it out
$.ajax( /*php call, receive JSON of the mysql data*/ );
});

我正在寻找速度和空间效率。哪个更好 - 使用 PHP 文件发送整个 HTML 文件,还是使用 HTML 文件发送 JSON 格式的数据?

提前致谢。

最佳答案

我认为你的问题对于SO来说太笼统了,但这是我的两分钱。

如果检索评论列表是您在此页面上要做的唯一事情,那么一定要选择第一个选项。您将少一个要求,而这是您应该保留的时间。但是,一旦您需要对此评论列表进行一些实时操作,例如更新创建删除,您就可以轻松地看到这些请求应该只返回新数据,而不是周围且尚未修改的所有数据。每次调用操作时,您都可以选择刷新页面或仅刷新部分内容。

所以我会这样想:

  • 如果您有一些数据需要快速显示,请选择第一个选项。内容将随页面一起显示。
  • 一旦您需要执行的操作仅影响页面的一小部分,为什么还要麻烦地再次检索整个页面呢?最快的选择是 AJAX 调用。

因此,将两者混合起来,并针对每种情况,选择最适合您需求的一个。

匹配您的示例

我会这样做:

echo 在您的页面上显示完整的评论列表。该列表现在已显示,正如您所需要的那样。

但是 AJAX 调用最适合:

  • 添加新评论
  • 更新现有的
  • 检索新评论
  • 删除现有的。

删除就是一个典型的例子。如果用户删除评论,您可以立即隐藏它,并在需要时发送请求。因此,它实际上会被用户视为实时,比您能做的任何事情都要快。

附注:在我最近使用 AngularJS 的应用程序中,我实际上会对所有内容进行 AJAX 请求。但这背后有一个很好的理由:通过这种机制,我可以使用缓存,因为我的 HTML 页面的内容是静态
静态页面的发送速度会更快,然后内容就会加载到正确的位置。但这个选择需要进行基准测试。
另外,重要的一点是,如果您走这条路,您必须意识到抓取机器人(例如 GoogleBot)将无法加载您的内容。

关于javascript - 使用 AJAX 加载 PHP 文件与 HTML 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20600286/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com