2015-01-15 6 views
2

Mojolicious::Plugin::OAuth2을 사용하여 google + 자격증 명을 사용하여 로그인 할 수있는 간단한 앱을 만들고 구문에 문제가 있습니다.Google 인증, 플러그인 OAuth2를 사용하는 Mojolicious 앱

내 코드는 그들이주는 예를 매우 가까이 :

use Mojolicious::Lite; 
use Mojolicious::Plugin::OAuth2; 

plugin 'OAuth2' => { 
    google => { 
    key => 'xxxxxx.apps.googleusercontent.com', 
    secret => 'xxxxxxxx', 
    }, 
}; 

get "/auth" => sub { 
    my $self = shift; 
    $self->delay(
    sub { 
     my $delay = shift; 
     $self->get_token(google => $delay->begin, scope->profile) 
    }, 
    sub { 
     my($delay, $token, $tx) = @_; 
     return $self->render(text => $tx->res->error) unless $token; 
     $self->session(token => $token); 
     $self->render(text => $token); 
    }, 
); 
}; 

app->start; 

문제 영역은 scope->profile 서비스를 제공합니다. 범위를 지정하지 않고 나는 "400 : Error : invalid_request 필수 매개 변수가 누락되었습니다 : 범위"라는 오류 메시지가 표시되지만 올바르게 가져올 수없고 구문 오류가 발생합니다.

설명서에 다음과 같이 표시됩니다. $token = $c->get_token($provider_name => \%args); 그렇다면 해시 인수를 사용하여 해시를 작성하는 것이 좋습니다.

답변

2

이 구문은 내가 마지막에 $delay->begin을 넣어 따옴표로 구글했다 나

$self->get_token('google', scope => 'profile', $delay->begin); 

위해 일 것입니다.

관련 문제