【问题标题】:Call Session Value from asp.net to Flash using Action Script 3.0使用 Action Script 3.0 将会话值从 asp.net 调用到 Flash
【发布时间】:2011-09-17 08:11:21
【问题描述】:

我在 ASP.Net 中有一个登录表单,当用户登录时,他会跳转到另一个包含 Flash 游戏链接的页面。

当用户点击 Flash 游戏链接时,Flash 游戏从 ASP.Net 调用会话,并在欢迎屏幕上显示 swf 文件中的用户名称,如果他获得高分,则保存他的高分。

下次登录时,他的高分会显示在屏幕上。

主要问题是如何从asp.net调用会话。

【问题讨论】:

    标签: asp.net flash actionscript-3


    【解决方案1】:

    您需要在 Flash ActionScript 3.0 中使用 URLLoader,只需创建单独的 aspx 页面以在 Flash 中检索会话变量。欲了解更多信息,请查看link

    不知道 aspx,但这里是 PHP 示例。

    Actionscript 3.0

    var current_session_id = stage.loaderInfo.parameters.session_id; // retrieve current session id from FlashVars.
    
    var urlRequest:URLRequest = new URLRequest("your aspx page url");
    var urlVariable:URLVariables = new URLVariables();
    
    var urlLoader:URLLoader = new URLLoader();
    urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
    
    urlLoader.addEventListener(Event.COMPLETE, urlLoader_complete);
    
    
    btn_submit.addEventListener(MouseEvent.CLICK, btn_submit_click);
    function btn_submit_click(e:Event)
    {
    
            urlVariable.session_id = current_session_id;
            urlRequest.data = urlVariable;
    
            urlLoader.load(urlRequest);
    }
    
    function urlLoader_complete(e:Event)
    {
            trace(e.target.data.test_var); // will get session variable.
    }
    

    PHP 代码

    <?php
    
        session_id($_REQUEST['session_id']);
        session_start();
    
        echo "test_var=".$_SESSION['your session varialbe'];
    ?>
    

    注意:您需要将当前 session_id 与您的 aspx 页面 url 一起传递。否则您的后端 aspx 页面会生成新的会话 ID,您将无法获得正确的会话。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-20
      • 1970-01-01
      • 2010-11-17
      • 1970-01-01
      • 2014-04-22
      相关资源
      最近更新 更多