关于Flash网页中allowNetworking AllowScriptAccess 参数的设置
2010年07月07日 星期三 下午 03:07
今天在天涯来吧瞅搞笑视频,是优酷的,发现暂停后点视频框框并没有进入到优酷的视频页面!点右下角的“优酷LOGO”,也是没有一点反应!! 翻开看看Flash网页嵌入代码:
类似这样子的(上边这是在DZ里用的带参数的格式!)。 于是我把论坛里编辑器的Flash调用代码也替换啦。 看看这两个关键参数的说明 allowNetworking 参数 “all”(默认值)— 在 SWF 中允许所有的网络 API。 “internal”— SWF 文件可能不调用浏览器导航或浏览器交互 API(在本节后面部分中列出),但是它会调用任何其它网络 API。 “none”— SWF 文件可能不调用浏览器导航或浏览器交互 API(在本节后面部分中列出),并且它无法使用任何 SWF 到 SWF 通信 API(也在本节后面部分中列出)。 allowNetworking 参数主要在 SWF 文件及所在的 HTML 页来自不同的域时使用。当要加载的 SWF 文件与其所在的 HTML 页来自同一个域时,不建议使用 “internal” 或 “none” 值,原因是您不能保证始终同时加载 SWF 文件和想要的 HTML 页。不受信任方可以从您的域中加载未包含在 HTML 中的 SWF 文件,这种情况下,allowNetworking 限制不会按预期发挥作用。 PS:当取值为“none”的时候是播放不了被引用的优酷视频的。 AllowScriptAccess 参数 当 AllowScriptAccess 为 “always” 时,SWF 文件可以与其嵌入到的 HTML 页进行通信,即使该 SWF 文件来自不同于 HTML 页的域也可以。 当 AllowScriptAccess 为 “sameDomain” 时,仅当 SWF 文件与其嵌入到的 HTML 页来自相同的域时,该 SWF 文件才能与该 HTML 页进行通信。此值是 AllowScriptAccess 的默认值。使用此设置,或者不设置 AllowScriptAccess 的值,可以防止一个域中的 SWF 文件访问另一个域的 HTML 页内的脚本。 当 AllowScriptAccess 为 “never” 时,SWF 文件将无法与任何 HTML 页进行通信。在 Adobe Flash CS4 Professional 中,不建议使用该值。如果没有在自己的域中提供不受信任的 SWF 文件,则不建议也不应使用该值。如果确实需要使用不受信任的 SWF 文件,则 Adobe 建议您创建一个不同的子域,并将所有不受信任的内容置于其中。 AllowScriptAccess 参数主要作用于不在本地运行的 SWF 文件,可以决定API(可实现外出脚本访问和外出 URL 访问)与嵌入这些 API 的网页通信。 allowNetworking 与 AllowScriptAccess allowNetworking 侧重 SWF 是否能够访问网络完成自身完整内容(元件或其他 SWF )的加载。 这里注意到 AllowScriptAccess 的取值为 “none” ,这个很迷糊,Google好多遍也没有找到更多的说明材料。 从这个字面意思看, AllowScriptAccess =”none” 表示没有设置,也就是和 AllowScriptAccess = “sameDomain” 雷同。至于为什么不用
若发现理解的不正确的地方还望指正出来。。 参考文档: |
|