Afaik,'frontend'cookie在当前动作发送之前设置好.
看看Mage_Core_Controller_Varien_Action::preDispatch().
查看preDispatch(),找到开始会话的行:
Mage::getSingleton('core/session', array('name' => $namespace))->start();
Run Code Online (Sandbox Code Playgroud)
通常(如果没有被覆盖)最终映射到
Mage_Core_Model_Session_Abstract_Varien::start()
Run Code Online (Sandbox Code Playgroud)
这是所有标准会话内容初始化的地方,包括使用的cookie设置session_set_cookie_params.
但请注意,一旦cookie已经存在,在核心会话被实例化时,即在start()被调用之前,可能已经发生了第一次cookie修改.那是因为构造函数revalidateCookie()在实例化核心会话时调用.看到:
Mage_Core_Model_Session_Abstract_Varien::init()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13560 次 |
| 最近记录: |