簡體   English   中英

Flash和php會話共享?

[英]Flash and php session sharing?

我已經建立了一個網站,並在其中放置了Flash游戲。

對於要玩游戲的人,他們必須登錄網站。

登錄網站將創建一個會話。 我想讓Flash游戲獲取會話ID,

所以我創建了一個獲取會話ID的函數。 它僅在Internet Explorer和

當我在Chrome瀏覽器中嘗試過時,它沒有檢索到會話ID。

有什么幫助嗎?

我已經寫了一個php文件,它將被as3用來獲取會話ID,php代碼是這樣的:

<?php
define( '_JEXEC', 1 );

define('JPATH_BASE', dirname(__FILE__) );

define( 'DS', DIRECTORY_SEPARATOR );

require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );

require('libraries/joomla/factory.php');
class session
{
    public function getId()
    {
        $mainframe =& JFactory::getApplication('site');
        $mainframe->initialise();

        $user =& JFactory::getUser();
        $user_id = $user->get('id');

        //echo($user_id);

        return $user_id;
    }
}

?>

當我在IE中嘗試使用Flash時,Flash獲得了正確的會話ID,但在Chrome中卻沒有。

您可以嘗試將cookie中存儲的會話標識符傳遞給嵌入式Flash,然后將Flash作為參數傳遞給服務器,以識別和初始化會話。

我大約5年前寫過:

http://www.rooftopsolutions.nl/blog/117

我的最終解決方案是使用備用令牌(出於安全性考慮,它與會話cookie不同)。 令牌將作為flashvar嵌入到標簽中。 然后,Flash Player將隨每個HTTP請求一起手動發送此令牌。

最后,在服務器上,我將令牌與真實的會話ID匹配,然后調用session_id()/ session_start()。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM