2017년 5월 31일 수요일

[Laravel] L5.4 Pasport 예제

이해가 하나도 안되다가 이해하기 쉬운 코드를 알게되어 정리하여 둔다.

// composer.json 
"laravel/passport": "^2.0"

// api.php
Route::post('auth/token', 'Restful\TokenController@authenticate');
Route::post('auth/refresh', 'Restful\TokenController@refreshToken');


class TokenController extends Controller
{
    /**
     * @var object
     */
    private $client;

    /**
     * DefaultController constructor.
     */
    public function __construct()
    {
        // Get grant type : password...
        $this->client = DB::table('oauth_clients')->where('id', 2)->first();
    }

    /**
     * @param Request $request
     * @return mixed
     */
    protected function authenticate(Request $request)
    {
        $request->request->add([
            'username' => $request->username,
            'password' => $request->password,
            'grant_type' => 'password',
            'client_id' => $this->client->id,
            'client_secret' => $this->client->secret,
            'scope' => '*'
        ]);

        $proxy = Request::create(
            'oauth/token',
            'POST'
        );

        return Route::dispatch($proxy);
    }

    /**
     * @param Request $request
     * @return mixed
     */
    protected function refreshToken(Request $request)
    {
        $request->request->add([
            'grant_type' => 'refresh_token',
            'refresh_token' => $request->refresh_token,
            'client_id' => $this->client->id,
            'client_secret' => $this->client->secret,
        ]);

        $proxy = Request::create(
            '/oauth/token',
            'POST'
        );

        return Route::dispatch($proxy);
    }
}

댓글 없음:

댓글 쓰기

[XBMC] Kodi Ondemandkorea addon 0.5.7

안녕하세요. 개발자 분께서 XBMC OnDemandkorea Addon 0.5.7 버전을 업데이트 해주셨네요 :) 모든분들 여기 가셔서 받으시면 될꺼같습니다. 그럼 모두 즐거운 KODI되세요 :)) LINK