Symfony路由到外部站点,包括会话值

时间:2012-07-09 22:49:21

标签: php symfony1

我正在移植使用Symfony框架的遗留系统。我几乎没有Symfony的经验。

我需要覆盖到外部站点的操作路由,并将会话值作为参数包含在内。

这是当前的routing.yml代码

mysystemtool:
  url:   /:module/mysystemtool/tool/*
  param: { action: mysystemtool }

我需要重定向到http://thirdpartyurl.com/?session_param=session_value

这样的网址

知道怎么做吗?

1 个答案:

答案 0 :(得分:10)

你不能路由它,因为路由只是内部的东西。那说你可以在控制器中重定向:

public function executeMysystemtool(sfWebRequest $request) {

    $param = $this->getUser()->getAttribute('session_param', 'default_value');
    $this->redirect('http://thirdpartyurl.com?session_param='.$param);
}

当然,您需要在模块中设置actions.class.php,以便您可以对此操作进行编码,但如果是现有操作,那么您只需更改操作中的逻辑即可。