HWIOAuthBundle 对 infos_url 的期望是什么?

What HWIOAuthBundle is expecting from the infos_url?

我正在尝试使用 HWIOAuthBundle 配置我的 oauth2 服务器,我想澄清一下 HWIOAuthBundle 期望的正确配置响应 infos_url?

我猜它需要一个 json 文件。那么,它有哪些领域呢? 如果你有链接,我会很高兴。

hwi_oauth:
    firewall_name: main
    resource_owners:
        battlenet:
            type: oauth2
            client_id: "%client_id%"
            client_secret: "%client_secret%"
            access_token_url: %path%/oauth/token
            authorization_url:  %path%/oauth/authorize
            infos_url:  %path%/user/me
            scope: "read"
            user_response_class: HWI\Bundle\OAuthBundle\OAuth\Response\PathUserResponse
            paths:
                identifier: id
                nickname: id
                realname: id

谢谢 ;)

我找到方法了!您必须为用户创建一个简单的 API,如下所示:

路由:

# app/routing.yml
api_users:
    pattern: /api/users.json
    defaults: { _controller: AppOAuthServerBundle:User:getUser }
    options:
        i18n: false

控制器:

<?php
namespace App\OAuthServerBundle\Controller;

use App\GeneralBundle\Entity\User;
use FOS\RestBundle\Controller\FOSRestController;

class UserController extends FOSRestController
{
    public function getUserAction()
    {
        $user = $this->get('security.context')->getToken()->getUser();

        if ( $user instanceof User ) {

            $data = array(
                'id' => $user->getId(),
                'username' => $user->getUsername(),
                'realname' => $user->getFirstname().' '.$user->getLastname(),
                'email'    => $user->getEmail(),

            );
        } else {
            $data = array();
        }


        $view = $this->view($data, 200)
            ->setTemplate('AppOAuthServerBundle:Default:index.html.twig')
            ->setFormat('json')
            ->setTemplateVar('user');

        return $this->handleView($view);
    }
}