如何从Flex执行JavaScript:这个javascript函数危险吗?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (63)

有一个flex应用程序,需要能够生成和执行JavaScript。当我这样说时,我的意思是我需要执行我在Flex应用程序中创建的原始JavaScript(而不仅仅是现有的JavaScript方法)

我目前通过公开以下JavaScript方法来做到这一点:

function doScript(js){ eval(js);}

然后,我可以在Flex中做这样的事情(注意:我正在做一些比真正的Flex应用程序中的警报框更重要的事情):

ExternalInterface.call("doScript","alert('foo'));

我的问题是这是否会带来任何安全风险,我假设它不是因为Flex和JasvaScript都运行客户端...

有一个更好的方法吗?

提问于
用户回答回答于

不需要JavaScript函数,第一个参数ExternalInterface可以是任何JavaScript代码,它不必是函数名(文档说明如此,但它是错误的)

尝试这个:

ExternalInterface.call("alert('hello')");
用户回答回答于

如果有人想,他们可以在客户端利用你的代码,但我不知道他们如何利用javascript利用你的服务器端代码(除非你使用服务器端javascript)

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励