为什么要从DOM中删除脚本标记?

时间:2014-01-11 00:57:13

标签: javascript html script-tag

我刚刚发现一个框架,在页面加载完成后从标记中删除脚本标记。我试图寻找“为什么”,但我发现很多人都在寻找一种方法来做到这一点而不说明原因。

这是一项安全预防措施吗?

是否还应该删除其他标签?


作为一个例子,这是我刚才提出的一个问题:

Why are <script> tags not showing up in the inspector in Firefox on the todomvc example for AngularJS but are for the source?

这是我最初发现这一点的地方。

我在那里得到了一条评论,解释了为什么他会在他的案子中

  

我不知道angularjs很好地告诉他们为什么删除不是模板的脚本,可能是编码指南。我自己删除它们,因为jquery曾经有一个意外的行为导致脚本在每次执行其中一个祖先时执行。错误是固定的,但为了避免这种情况再次发生,我将其删除。

1 个答案:

答案 0 :(得分:0)

我在基于node.js的后端做同样的事情。 首先,我只创建一个脚本标记,并从我的nodejs服务器请求所需的端点。它到达后,该工作也移除了调用者和自己。并且我在其他20个人的本地存储中保留一个令牌,并且来电者脚本标签也必须将此信息发送到我的服务器,并且此密钥有一部分描述用户用户可以尝试从密钥中选择随机值但是如果我确认通过该部分并更新数据库中的令牌,用户必须请求新的访问令牌数组,以便在下次输入传递和用户名时自动登录。

这不是完美的安全性,但是阻止大多数尝试使我的代码可见,所以在页面中只有可见的脚本,它将调用我的检查器功能,我的检查器功能将密钥发送回服务器并获取数据做了我必须做的事情和移除自己。