2

我指的是Disqus等服务的嵌入片段(以及下载的相关文件)

当然,给某人一些标记以将您的 JavaScript 文件拉到他们的网站上的概念本身很简单。

但是,当我查看 Disqus 等提供商使用的代码时,我看到了对 anembedKey等的引用。这似乎暗示了某种额外的安全规定(而不是简单地期待 Web 服务身份验证令牌)。

那里也有:

  • 任何关于“正确”和“安全”进行这种操作的教程?
  • 是否有任何主要考虑事项(除了确保您与用户站点上的现有脚本没有冲突)?

编辑

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

4

1 回答 1

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
于 2012-05-10T08:01:55.060 回答