埃瓦尔是我唯一的选择吗?
Is Eval my only option?
我想知道 Eval() 是否是我在服务器上调用脚本并在这些文件上执行 javascript 的唯一选择。
我看到关于 Eval 安全问题的每一个地方,人们不推荐它 - 那么有没有安全的方法可以使用 javascript 请求文件并执行该 JS?
不,您不必评估,尽管如果您信任输入,这样做就可以了。最好还是只传输数据而不运行代码。
您可以动态创建脚本标记:
var script = document.createElement('script');
script.src = 'path/to/javascript/to/run';
document.body.appendChild(script);
我在 asp.net mcv3 Web 应用程序中广泛地执行此操作,以使用 jQuery.load() 动态加载脚本化分部视图
只需文档编写脚本包含到页面即可。然后客户端的浏览器会为您完成此操作,您几乎可以忽略它的安全性方面。
相关文章:
- 创建唯一选项,然后使用 JavaScript 填充多个选择
- 如何从数据中选择d3.js中的唯一值
- jQuery检索最接近唯一选择器的内容
- 埃瓦尔是我唯一的选择吗?
- 如何从 html 的多个下拉列表中仅选择唯一值
- JavaScript - 检查选择框中的唯一值
- 如何获得元素的唯一选择器
- 选择包含每个唯一字段值的行,并按另一个具有限制的字段排序
- 选择多个选项可创建唯一的购物车SKU
- 如何从动态数组中选择3个唯一项目
- Javascript:选择中的唯一选项
- 如何使用Javascript/Jquery为每个唯一的属性值选择第一个匹配的元素
- 迭代和选择那些唯一的数字(jQuery)
- 如何在jquery中获取唯一选择器
- 点击一个选择,然后将值传递给“;立即购买”;链接到唯一url的按钮
- 显示特定选项的隐藏文本框获胜'当它是唯一的选择时,它不起作用
- angular中唯一的过滤选择列表,只返回数据集中的单个项
- 如何在没有唯一标识属性但有HTML注释的情况下使用jQuery选择HTML
- AngularJS 选择唯一值
- 从Javascript对象数组中为单个属性选择唯一值的正确方法是什么