我正在移植使用Symfony框架的遗留系统。我几乎没有Symfony的经验。
我需要覆盖到外部站点的操作路由,并将会话值作为参数包含在内。
这是当前的routing.yml
代码
mysystemtool:
url: /:module/mysystemtool/tool/*
param: { action: mysystemtool }
我需要重定向到http://thirdpartyurl.com/?session_param=session_value
知道怎么做吗?
答案 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
,以便您可以对此操作进行编码,但如果是现有操作,那么您只需更改操作中的逻辑即可。