在这个doc中存在$ response变量 https://github.com/hwi/HWIOAuthBundle/blob/master/Resources/doc/internals/response_object_and_paths.md
但我不明白,$控制器是如何回应的。
请帮忙!请举个例子!
答案 0 :(得分:1)
您必须实现自己的自定义用户提供程序,它将使用HWIOAuthBundle来加载用户的数据(例如,类似于您希望从自己的SQL表加载用户)。
以下是一个很好的例子:https://gist.github.com/danvbe/4476697
Symfony的文档How to Create a custom User Provider
修改强>
控制器无法访问您的UserProvider所访问的HWIOAuthBundle的UserResponseInterface,因此如果您想访问控制器中用户的realName,则必须通过用户实体进行访问。
用户提供商:
...
public function loadUserByOAuthUserResponse(UserResponseInterface $response)
{
$userEmail = $response->getEmail();
$user = $this->userManager->findUserByEmail($userEmail);
// if null just create new user and set it properties
if (null === $user) {
$realName = $response->getRealName();
$user = new User();
$user->setRealName($realName);
...
控制器:
...
public function defaultAction(Request $request)
{
$this->getUser()->getRealName();
...