是否有关于在其他人的网站上嵌入JavaScript应用程序的教程?

时间:2012-05-10 07:42:30

标签: javascript embed

我指的是Disqus

等服务的嵌入代码段(以及下载的相关文件)

当然,为某人提供一些将您的JavaScript文件下载到其网站上的标记的概念本身很简单。

但是,当我查看像Disqus这样的提供程序使用的代码[被拉入]时,我会看到对embedKey等的引用。这似乎暗示了某种额外的安全措施(除了简单的期待Web服务身份验证令牌。)

那里有:

  • 有关这种“正确”和“安全”的任何教程?
  • 是否有任何重要的考虑事项(除了确保与用户网站上的现有脚本没有冲突外)?

修改

有关正在使用的密钥的示例,请参阅Wufoo在http://wufoo.com/scripts/embed/form.js的嵌入代码

1 个答案:

答案 0 :(得分:0)

embedKey?听起来像谷歌地图API key或adsense unit ID。它确定该代码单元是否有效,某人实际拥有它,或指向服务器中的一组项目(可能是聊天室ID)。

至于代码中的冲突,你应该将代码包装在IFFE中,这样,你的变量就不会泄漏到周围的代码中。什么不是本地设置假设你是从外面获得它。使用var正确声明变量,以避免设置/更改外部作用域中的变量。此外,对于名称冲突,局部变量优先。

//outsider code
var foo = 'foo';
var bar = 'bar';

//your code
(function(){
    var foo = 'baz';    //set a local foo
    bar = bam;          //outsider bar changed (no var);

    alert(foo); //baz
    alert(bar); //bam

}());

//some more outsider code
alert(foo); //foo, since  you protected your code
alert(bar); //bam, was wrecked by your code