2012-01-15 32 views
5

我是新的symfony2,我試圖通過休息api與FOSUserBundle連接。 Web瀏覽器身份驗證工作正常,我可以使用FOSUserBundle創建用戶。 其實我想用Symfony構建一個webservice。 如何連接用戶休息? 它是一個容易使用symfony2休息的軟件包嗎?通過與symfony2休息進行身份驗證

謝謝。

+2

你應該看看[FOSRestBundle(https://github.com/FriendsOfSymfony/FOSRestBundle)。 – 2012-01-15 20:48:57

回答

0

要驗證用戶,首先創建一個採取用​​戶名和密碼的操作。然後根據用戶名和密碼從數據庫中找到用戶。爲了在數據庫中進行傳遞,您必須按照FOSUserBundle的設置製作密碼。稍後你需要創建UsernamePasswordToken。對於你可以使用下面的代碼在行動

$providerKey = $this->container->getParameter('fos_user.firewall_name'); 
$token = new UsernamePasswordToken($user, null, $providerKey, $user->getRoles()); 
$this->container->get('security.context')->setToken($token); 

我認爲它會幫助你。

+4

這是錯誤的答案。 REST API必須具有自定義身份驗證提供程序才能不使用Cookie來維護登錄的用戶。 這是一篇關於如何做到這一點的文章。 http://symfony.com/doc/2.0/cookbook/security/custom_authentication_provider.html – 2013-02-27 19:13:34

相關問題