我想FacebookSession類的對象傳遞給通過generateUrl我的控制器,但它給了我下面的錯誤是否可以在Symfony控制器中傳遞類變量作爲參數?
警告:的preg_match()預計參數2爲字符串,對象/用戶/ shashankm /文件中給出/Projects/myproject/app/cache/dev/classes.php線888
if($session) {
try {
//Redirect to a link here with the session variable using generateUrl
$url = $this->generateUrl('threadgab_userinfo_redirect', array('session' => $session), true);
return $this->redirect($url);
} catch(FacebookRequestException $e) {
//Create an error page for this scenario
}
}
被叫控制器如下:
我做了如下代碼更改爲每邁克爾斯answerbut它不幫助:
/**
* @Route("/userinfo/{session}")
* @ParamConverter("session", class="Facebook:FacebookSession")
*/
class UserinfoController extends Controller
{
public function indexAction(FacebookSession $session)
{
return new Response("Got session id : ". $session->getToken());
}
}
在Symfony中可以這樣做嗎?
對我來說,實現你的目標的最簡單的方法是查看依賴注入容器,爲facebook會話創建一個類,將它定義爲服務,在你的控制器中使用它 –
你想要什麼實現?你真的需要使用session-id處理請求,或者你只需要將會話對象傳遞給某個控制器? –