JavaScript小部件与iFrame?安全问题?

3
我有一个快速的问题。我想要创建一个小型的调度程序小部件,放在我的客户网站上。这样,如果我需要对表单进行全局更改,我只需要做一次即可。
由于需要知道提交表单后将其发送到哪个电子邮件地址,因此该表单必须针对每个网站进行定制。
我考虑使用像这样的iFrame
<iframe src="http://www.domain.com/scheduler/shop-name/"></iframe>

但我认为那不会是最佳方法,我也不希望有人直接访问该URL。

另一个选择是类似于这样的:

<script type="text/javascript">
shop_id = '114000300';
</script>
<script src="http://www.domain.com/js.widget" type="text/javascript"></script>

我还不太确定如何执行该选项,我对Javascript的经验不是很丰富,但你们觉得呢?iFrame和Javascript有什么优缺点?

只是想知道最好的选择是什么,如果有人能给我一些入门技巧和需要注意的安全问题就更好了。

谢谢!


好的!那可以吗? - Drew
2个回答

6
<iframe>标签
  • 未经额外处理,无法向父窗口通信其大小,这限制了调整大小的能力。
  • 提供更好的隔离性,因为您无法访问父页面上的任何内容。从客户的角度来看,这可能是一个优点。
  • 可以纯粹使用HTML编写,不一定需要JavaScript经验。
  • 具有自己独立的CSS样式。
  • 适用于禁用脚本的用户。

谢谢!看起来iFrame是最好的选择。有没有办法阻止任何人直接访问iframe src?它将是一个空白页面,上面有一个表单,看起来会很奇怪。 - Drew
我建议你最好不要这样做。如果你一定要做些什么,就防止机器人索引它,这样搜索结果中就不会出现它的链接:http://www.columbia.edu/acis/webdev/google/nocrawl.html#meta - Dark Falcon

3
除了@Dark Falcon的回答之外,还有一些要点需要补充:
  • 使用iframe可以更好地控制设计。在使用javascript小部件时,客户端的样式可能会与小部件的样式发生冲突。
  • 从安全性方面考虑,iframe更好(存储的cookie不同)。
  • 制作JavaScript小部件需要更多的关注和专业知识,因为您需要确保其他JavaScript不会与您的代码发生冲突(全局vars等)。

如果想要避免别人直接访问URL,可以使用编写动态iframe的JavaScript。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接