Stack溢出中有很多关于AJAX应该返回JSON还是HTML的问题,而且大多数人似乎都认为为了速度起见返回JSON是理想的。然而,这意味着如果我优雅地降级,我将有一些重复的代码,因为我在PHP和Javascript中生成相同的标记。
一个假设的例子:一个网站有一个链接到短故事的列表。如果用户有Javascript,那么点击这些链接中的一个就可以在不刷新页面的情况下加载故事。这是通过AJAX请求完成的,该请求返回带有故事信息的JSON。Javascript为故事生成标记。如果用户没有Javascript,那么单击相同的链接就会重新加载当前加载的页面。PHP为故事生成标记。
是否有一种解决方案可以使用JSON并在不重复代码的情况下优雅地降级?
发布于 2011-05-27 12:38:54
在最近的一个谷歌IO演示文稿中,对这个主题进行了较为详细的讨论。
为了解决这个问题,他们使用八字胡做模板。使用客户端的Mustache.js实现和服务器端共享相同的模板(在您的例子中可能是Mustache.php )可以删除重复。
https://softwareengineering.stackexchange.com/questions/76539
复制相似问题