1

我工作的组织创建了一个小型 Flash 小部件,我们鼓励支持者将其放置在他们的网站上。我正在尝试确定是否有办法改进我们从这些嵌入式小部件中获得的统计数据。

大多数情况下,我想获取加载小部件的站点的域。现在我可以在服务器日志中看到引荐来源网址,但这包括完整的 URL,我不想为了提取域而编写自己的日志处理系统。

我对 ActionScript 知之甚少,但我查看了 ActionScript 文档,看看是否能找到明显的解决方案。我还没有找到任何允许对象向浏览器询问页面 URL 的东西。System.Capabilities 类似乎提供了很多关于玩家环境的信息,但没有提供玩家被调用的位置(据我所知,但也许我遗漏了一些东西)。

4

3 回答 3

2
Steps:
   1. Import external interface into your file: import flash.external.ExternalInterface;
   2. Initialize a variable to store the url path: var urlPath;
   3. Create a function to call external interface and assign the html page path to your variable: urlPath = ExternalInterface.call(”window.location.href.toString”);
   4. Call the function when/if needed.

例子:

使用 javascript:window.location.href 或 window.location.href.toString(); 使用动作脚本:ExternalInterface.call(”window.location.href.toString”); 外部接口 html 示例

来源: http: //blog.circlecube.com/2008/01/02/get-current-url-to-flash-swf-using-an-external-interface-call/

要获取查询字符串,请参阅这篇文章: http: //blog.circlecube.com/2008/03/20/get-current-url-and-query-string-parameters-to-flash-tutorial/

于 2009-02-11T15:13:21.603 回答
1

是的,您可以获取引荐来源网址(或 DOM 中的任何其他内容)。编写小的 javascript 片段来获取这些信息,并使用 ExternalInterface 将这些片段注入到 javascript 页面中。然后您可以执行 ExternalInterface.call("eval", "myfunction") 并让这些 javascript 方法将数据返回到闪存。

于 2009-02-11T16:50:23.587 回答
0

MochiBot是一项可以做到这一点的服务,您可以使用他们的服务(它是免费的),也可以查看他们使用的代码(这是一个大约 40 行的类)。这一切都可以从他们的网站上获得。

快速浏览一下他们的代码就会发现,他们发送的大部分内容是这两个:

Security.sandboxType;
Capabilities.version;
于 2009-02-11T15:17:38.957 回答