小编典典

与发送JSON和构建HTML相比,用AJAX发送HTML有多危险?

ajax

在我看来,对此的任何拦截都可能会立即造成麻烦,因为任何人都可以将任何HTML /脚本发送回客户端。

我对此感兴趣的唯一原因是,每当DOM结构/ CSS发生更改时,前端开发人员都会承受巨大的痛苦,因此现在您必须确定在Javascript
HTML构建过程中可能存在的位置更新。

你们如何处理?有什么我可以做的以减少任何风险的方法,或者只是一个坏主意?


阅读 260

收藏
2020-07-26

共1个答案

小编典典

我倾向于使用以下规则:

  1. 请求并返回HTML以获取快速摘要,然后使用客户端(静态)JavaScript插入它们。非常适合警报消息。

  2. 请求并返回大型数据集的JSON。当您想在客户端进行过滤,分组或排序而不用其他形式重新请求数据时,此方法非常有用。

  3. 请求并返回大型数据集的JSON,但在JSON记录中为每个记录都包含(转义的)HTML代码段。与(2)相比,这意味着更多的渲染时间和更多的带宽使用,但是可以减少通常复杂的HTML渲染的重复。

  4. 请求并返回Javascript,并将eval其返回客户端。这对于隐藏,显示,移动和删除等交互最有效。它也可以用于插入,但是通常类型(1)或(5)对此效果更好。

  5. 请求并返回Javascript,以及eval它的客户端,但在Javascript中包含转义的HTML,以便服务器执行HTML呈现。

我可能最常使用5和1。

2020-07-26