从数据库发送HTML有哪些不利之处?

时间:2015-09-17 22:09:45

标签: sql security

这是我从DB

接收对象的方式
{ 
  BET: 57630343,
  CUSTOMER: 181645,
  SPORT: 'MLB',
  'XX_FILL OPEN': '<button class="btn btn-xs" ng-click="fillOpen(57630343)">Fill Open</button>',
  XX_VIEW: '<select>\r\n  <option value="volvo" label="Volvo">Volvo</option>\r\n  <option value="saab" label="Saab">Saab</option>\r\n  <option value="mercedes" label="Mercedes">Mercedes</option>\r\n  <option value="audi" label="Audi">Audi</option>\r\n</select>',
  XX_CANCEL: '<input type="checkbox" name="sports" value="soccer"  onchange="fillOpen(57630343)"/>' 
}

你可以看到以XX索引开头的道具是HTML元素。我正在使用JavaScript将这些元素放在前端并将它们注入到DOM中。

这是我第一次这样做。我习惯于将XML作为JSON发送到前端,所以我渲染它。

我们现在的做法有问题吗?这里有什么不安全的技术吗?黑客更容易闯入我的系统?

1 个答案:

答案 0 :(得分:1)

同样关于塞巴斯的评论,这应该是答案。应始终在服务器端处理安全性,这意味着这种做法不会使事情变得更糟。

此外,存储这样的html将成为维护的噩梦。例如,如果出于某种原因“赌注”,那就是&#39; id需要更改,您需要重新生成该行的所有html。有关导致此问题的原因的详情,请参阅data normalization